案例:ORA-00600: internal error code, arguments: [4097]

本案例来自某省电信一套11.2.0.4的rac,应用的存储过程调用一直在报ORA-00600: internal error code, arguments: [4097],对于经常搞恢复的人来说,这个错误非常熟悉,都不用分析直接重建undo即可,但是作为一个专业的troubleshooter,还是多少分析一下来龙去脉吧。。。 继续阅读

发表在 Oracle, Oracle troubleshooting | 标签为 | 留下评论

oracle online系列(二):online indexbuild

online indexbuild (online create或者rebuild index)是oracle的一个非常常用的online操作,我们知道当创建索引或者重建索引没有加online关键字的话,会请求表对象上的4号TM锁,而DML请求的是3号TM锁,3和4的TM锁并不兼容,所以在索引创建或者重建期间是无法进行DML操作的,等待事件为enq: TM – contention。为了改进这一缺陷,在oracle 8i推出了online indexbuild功能,并且在11.1该功能得到了进一步增强。online indexbuild就不会影响其他DML操作的正常运行。本文将深入解析 online indexbuild的工作原理。 继续阅读

发表在 Oracle | 标签为 , , | 留下评论

oracle online系列(一):online move datafile

昨日与维照的技术交流中,说起oracle的诸多online操作,所以决定写一个oracle online操作的系列文章。

先从online move datafile说起,online move datafile是12.1的新特性,在12c之前如果想要move datafile通常需要下列步骤: 继续阅读

发表在 Oracle | 标签为 | 留下评论

案例:ORA-00600: internal error code, arguments: [4187]

本案例客户来自某省电信,alert日志大量的ORA-00600[4187]报错,已经影响到业务正常运行。 继续阅读

发表在 Oracle, Oracle troubleshooting | 标签为 | 留下评论

案例:troubleshooting gc buffer busy acquire(一)

本案例来自两年前深圳某客户两节点rac的一次生产故障,现象是大面积的gc buffer busy acquire导致业务瘫痪。

首先查看1节点awr头部信息和load profile 继续阅读

发表在 Oracle, Oracle troubleshooting | 标签为 , | 留下评论

案例:ohasd crash on aix

本案例是福建某客户一套待上线系统,操作系统版本为AIX 7.2 ,集群版本为12.2。几天前2节点GI突然重启,由于是比较重要的待上线系统,所以需要仔细一下分析原因。 继续阅读

发表在 Oracle, Oracle troubleshooting | 标签为 , | 留下评论

案例:index range scan真的不会多块读吗?

此次案例来自西安某客户的一次sql优化,对于优化本身并不复杂,但是发现了一个比较有趣的问题,就是索引范围扫描以及回表都有使用多块读的方式。下面来看看具体案例。 继续阅读

发表在 Oracle, Oralce performance | 标签为 | 留下评论

案例:smon回滚异常导致实例crash

某省电力系统的一个4节点rac,2节点在早上的时候crash。 继续阅读

发表在 Oracle, Oracle troubleshooting | 标签为 , | 留下评论

案例:奇怪的ORA-01000

某银行的某系统rac数据库版本19.6,二节点的mmon slave进程一直在报ORA-01000,导致awr、ash等等很多MMON的功能收到了影响。 继续阅读

发表在 Oracle, Oracle troubleshooting | 标签为 | 留下评论

案例:深入解析asm rebalance无法启动

某银行ods系统的一体机(数据库版本为19.8)上,由于某个存储节点掉了4块盘,磁盘处于offline状态,在超过了”_asm_disk_repair_time”时间内没有online,被磁盘组自动drop force,之后在drop disk rebalance未完成的情况下,将4块盘重新加入了磁盘组,由于担心rebalance影响ods跑批业务,所以在跑批阶段中断rebalance操作,在空闲时重新发起rebalance,反复启停rebalance很多次,但是在某一次中断rebalance之后,发现rebalance就再也无法启动了。 继续阅读

发表在 Oracle, Oracle troubleshooting | 标签为 , | 留下评论