测试环境中,由于将数据字典表错误的导入到当前的数据库SYS用户下,导致数据字典出现了不一致的状态,反应出来的结果就是大量的ORA-600和ORA-7445错误。
列几个错误信息,简单记录一下这个问题:
Fri Feb 10 16:30:14 CST 2012 Errors IN file /u01/app/oracle/admin/orcl10g/udump/orcl10g_ora_8690.trc: ORA-00600: internal error code, arguments: [16201], [1403], [], [], [], [], [], [] Fri Feb 10 16:30:16 CST 2012 Errors IN file /u01/app/oracle/admin/orcl10g/udump/orcl10g_ora_8690.trc: ORA-00600: internal error code, arguments: [16201], [1403], [], [], [], [], [], [] . . . Fri Feb 10 22:00:05 CST 2012 Errors IN file /u01/app/oracle/admin/orcl10g/bdump/orcl10g_j001_22380.trc: ORA-07445: exception encountered: core dump [kdapblkcntt()+115] [SIGSEGV] [Address NOT mapped TO object] [0x000000188] [] [] Sat Feb 11 06:00:06 CST 2012 Errors IN file /u01/app/oracle/admin/orcl10g/bdump/orcl10g_j001_23555.trc: ORA-07445: exception encountered: core dump [kdapblkcntt()+115] [SIGSEGV] [Address NOT mapped TO object] [0x000000188] [] [] . . . Mon Feb 13 15:17:22 CST 2012 Errors IN file /u01/app/oracle/admin/orcl10g/udump/orcl10g_ora_14705.trc: ORA-00600: internal error code, arguments: [ktsircinfo_num1], [6], [9], [1139], [], [], [], [] . . . Mon Feb 27 17:30:25 CST 2012 Errors IN file /u01/app/oracle/admin/orcl10g/udump/orcl10g_ora_889.trc: ORA-00600: internal error code, arguments: [ktssdrp1], [7], [6], [11], [], [], [], [] Mon Feb 27 17:30:30 CST 2012 ORA-600 signalled during: DROP tablespace perfstat including contents cascade constraints... Mon Feb 27 17:30:43 CST 2012 DROP tablespace perfstat including contents cascade constraints . . . Wed Feb 29 23:07:03 CST 2012 Errors IN file /u01/app/oracle/admin/orcl10g/udump/orcl10g_ora_1401.trc: ORA-00600: internal error code, arguments: [kcfrbd_3], [1], [240841], [1], [186752], [186752], [], [] . . . Mon Mar 12 12:06:58 CST 2012 Errors IN file /u01/app/oracle/admin/orcl10g/udump/orcl10g_ora_22193.trc: ORA-00600: internal error code, arguments: [kzdugt], [], [], [], [], [], [], [] |
这些错误中,有个别错误在MOS中就没有任何记录,而另外一些,虽然存在记录,但是都和当前的错误现象不符。且所有的错误都是在数据字典不一致后出现的,因此可以确定,这些错误都与数据字典不一致有关。
一般情况下,数据库不会产生这种异常,如果真是由于导入或者直接修改导致数据字典的异常,那么推荐采用exp导出,重建imp导入的方式来解决问题。
最后还要强调一次,数据字典的修改是非常危险的,无论是有意为之还是无心之过。