Oracle12c R2注意事项: 又一个BUG 生成大量的trace 含 kjshash() kjqghd()

Oracle 12c R2 又一bug,DIAG目录一天生成100GB的trace文件, 之前分享过几篇,这里再记录一种情况,遇到该现象时,需要先查看生成的trace文件进程是前台还是后台, trace的文件内容,当前数据库是否有配置诊断类event. 这个trace文件是有前台进程生成的,trace文件中包含kjshash和kjqghd。

,

Alert: Patch 28553832(11g R2 Extended Support patch) need apply upgrade to 19c

Direct Upgrade to Oracle Database 19c的版本有11.2.0.4,12.1.0.2,12.2.0.1,18c. 在最近11G (11204)升级19C的方案测试时遇到了上面的错误, 是不是很惊喜?在GI升级19c时需要检查patch 28553832是否安装,而且不允许跳过。这个从Patches to apply before upgrading Oracle GI and DB to 19c or downgrading to previous release (Doc ID 2539751.1) 可以确认。

,

Alert: oracle 12\18\19\20c 不要滥用“_ORACLE_SCRIPT”=true

“_ORACLE_SCRIPT”参数首先是个隐藏参数,所以很少有文档中描述他打开了哪些开关,因为它是oracle内部维护时使用,在ORACLE_HOME下的脚本中不少都有alter session set “_oracle_script”=ture的SQL, 但是注意执行完后即使的再改回false. 千万不要为了突破oracle的默认限制而随意使用_oracle_script参数,生产库除了oracle要求更不建议修改,因为后期有可能会遇到不些不必要的麻烦。

,

Alert: Oracle 19c DDL “COMMENT on Table” sql cursor no invalidation(deferred invalidation增强)

有时我们是希望做了一些改变后希望SQL再次解析生成更好的执行计划(maybe), 通常是comment DDL或grant select on xx to system等相对影响较小的操作。但是注意“COMMENT ON” DDL 在Oracle 19c中行为貌似又改变了(12c未改变,18c不确认),SQL CURSOR不再失效invalidation

, ,

Oracle 20C 关于Security安全的行为改变

Oracle 20-22c是12c后的下一个大版本集,也有了大的改变,如本身就云架构数据库定位从20c起不再支持非多租户,了解新版本可以了解数据库的发展方向,减少不必要的麻烦,如短时间内再次升级功能不再支持应用程序又要重写, 对于安全方面同样也有一些变化,这里简单的记录。

Troubleshooting long wait “enq: US – contention” & “enq: IV – contention” after DDL, alert show “libcache interrupt action by LCK”

一套12C R2版本的4节点RAC数据库,记录一起高并发业务繁忙时,DDL导致数据库出现大量前台会话长时间等待”enq: US – contention” & “enq: IV – contention” ,该SQL(INSRT VALUE)的只是一个Children cursor无法执行(sql_start_exec 时间已过去数小时),第二个的children cursor执行效率正常,最终KILL 这些长时间运行前端会话解决。

, ,

Oracle 20C新特性一:Blockchain Tables(区块链表)

尽管新兴的分布式应用程序受益于去中心化信任模型中,但当今大多数应用程序都具有中央权限(银行,代管公司,交易交易所,政府办公室等),并且借助Oracle数据库中的区块链表,可以使这些应用程序更安全,而无需增加更改为托管服务器的复杂性去中心化模型。这就是使用Oracle Database 20c本机区块链表的原因

,

12c wait library cache lock self-deadlock when compile EDITIONABLE Procedure

前段时间遇到的一个案例,当编译一个invalid procedure时,自已会话堵塞自己等待’library cache lock’. 数据库版本Oracle 12.2, 当然这个procedure里面用到了dblink 嵌套procedure跨了3个数据库,在查看procedures定义时发现附加了”EDITIONABLE”

,

Oracle DUL支持Oracle 20c

之前测试过《DUL 支持Oracle 19c》,目前ORACLE 20C官方文档已发布, 按惯例2020年第一季度会发布ON cloud平台版本和工程系统,第二季度会发布可下载非工程系统版本,我先尝尝鲜搞个测试版本使用DUL测试是否继续支持20c,包括blockchain table.

,

oracle wait event “enq: SQ – contention” and DBA_DB_LINK_SOURCES

从12c 版本开始新引入DBA_DB_LINK_SOURCES(link_sources$)记录了远程dblink 曾登录本地数据的会话信息(hostname、IP, dbname、用户名、logon_time、logon_count),在使用DBLINK的环境中有时会看到,dblink session在等待“Enq: SQ – contention ”

, ,

细说“Error: cannot fetch last explain plan from PLAN_TABLE”

前几日有位小兄弟问为什么有时使用explain plan for ….., 然后用dbms_xplan.display查看执行计划, 有时会提示“Error: cannot fetch last explain plan from PLAN_TABLE” 错误? 其实这个问题在Oracle 12c 以后应该基本不存在,因为这是explain plan一种悄悄的行为变化

, ,

DUL 支持Oracle 19c , 如何手动处理延迟段创建的表

oracle dul是oracle的恢复利器, 它的传奇功能不再解释,但是dul和其它工具一样也是需要段块信息恢复数据,但是从oracle 11g开始支持了延迟段创建,那么使用dul unload table, unload user默认是不会导出未生成段的表对象, 这样恢复的数据理论也会因为表不存在而丢失部分空表。但是表结构是在数据字典中可以手动生成建表语句。

Oracle 12c ‘log file parallel write’ event changed!

Starting from version 12.2, only if the multi-tenant option is used, this is changed, and the wait event ‘log file parallel write’ only is shown if the submitted IOs are not available after they are submitted, and thus the logwriter process has to wait for them.

Install Oracle 12c R2 RAC on Aix 7.2 Power System

记录一下oracle 12.2 RAC 在 IBM AIX 7.2 Power System上的安装,GI安装过程很慢,总耗时4小时。安装建议首选参考oracle 官方文档。

Oracle 12c R2 注意事项: 每个session自动创建一空trace file 包含 KSIPC

最近突然有一个oracle 12c R2环境的trace目录使用率暴涨,分析发现一天创建了几十万个trace,几乎是每个会话创建一个trace, 当前数据库也并未启用event。简单记录

Troubleshooting Oracle12c stop CRS failed caused by ORA-27303 HAIP not found

前两天在停止一个CRS 时发现因为HAIP不存在, crsctl stop crs无法正常关闭CRS, 甚至使用-f 选项, 处理方法很简单,手动增加一个haip就可以。 环境是12c R2 on RHEL.

,

说说Oracle DB “secondary” index 那些事.(19c drop_secondary_indexes)

Oracle DB “secondary” index 叫辅助索引或次要的索引,名称是相对primary index命名的,但是在19c的dbms_auto_index.drop_secondary_indexes中可以看出删除的索引也并不是除了primary key以外的全部索引, 主键、外键、唯一键同样也会保留。 该功能可能目前也只能用于测试环境中, 如先把次要的索引全部删除,然后测试让数据库自动创建及删除维护相应的索引。

, ,

Troubleshooting ORA-6544 [pevm_peruws_callback-1] [4021] waiting to lock object SYS.TAB$

一个12C R2的2节点RAC, 节点1 8点左右数据库实例连接hang, 从数据库DB alert log中发现ORA-6544 [pevm_peruws_callback-1] [4021]错误, 可见前期出现大量的library cache 等待,影响了SQL解析和连接,因情况紧急kill 实例重启后恢复正常。

,

12c R2注意事项: mmon trace增长很快,3秒一次AUTO SGA: kmgs_parameter_update_timeout gen0 0 mmon alive 1

Oracle 12c很多情况下TRACE目录使用率增长迅速, 之前有总结过两篇异常情况,但是最近还是比较多,记录一下另一种情况。
Oracle12c R2注意事项: 因BUG生成大量的trace file 包含KRB: (rman module)
Oracle12c R2注意事项:ORA-12805问题

, ,

都9102年了, 你还在考Oracle 11G、12C OCP?

最近有看到还有人在考oracle 11g, 12c 的OCP, 是陈年的OCP 有技术含量么? 在我个人认为2009年后拿到的都一个样,16年前的8i OCP要过4门,
从2019年开始 Oracle 认证有了新的变化:
1, 以后不再有OCA , 新Oracle OCP 只需要2门课程的考试(1Z0-082+1Z0-083)