这是一个10.2.0.1到10.2.0.4上都存在的bug。
错误发生在DG的STANDBY数据库中:
Fri Oct 19 12:01:16 2012 Errors IN file /DATA/oracle/admin/vodapp/bdump/vodapp_mrp0_21304.trc: ORA-00600: internal error code, arguments: [3689], [33], [], [], [], [], [], [] Errors WITH log /baceldba/archive/1_30374_730819916.dbf MRP0: Background Media Recovery TERMINATED WITH error 600 |
导致这个错误的原因很简单,在主库执行了ALTER TABLESPACE DROP DATAFILE后,并不会导致DATAFILE的被删除,后随后在增加新的数据文件时,就可能导致备库出现ORA-600[3689]的错误。详细描述可参考文档Bug 5623467 – Corrupt redo from ALTER TABLESPACE DROP DATAFILE [ID 5623467.8]。
这个bug在10.2.0.5和11.1.0.6中被FIXED。而Oracle给出的解决方案是避免使用ALTER TABLESPACE DROP DATAFILE语句。虽然这个语法本身使用概率很低,但是一旦出现了这个错误,Oracle并没有提供任何有价值的方案。
将问题表空间的最新备份拷贝到备库,然后进行恢复应该可以避免这个错误对备库的影响。