Oracle database突然Crash,报错ORA-00600: internal error code, arguments: [kcrfr_resize2], [201326592], [67100672], [], [], [], [], [], [], [], [], []
前两天,正准备打开oracle 数据库,startup进入的时候,突然来一个ORA-600的错误,当时小小惊了一下,心想,奇怪啊!!最近没有做什么不妥的,然后赶紧check alert.log (\oracle\diag\rdbms\oratest\oratest\trace\alert.log) ,
偶的ORACLE version: Oracle 11.2.0.1 , OS: windows 7-32bit , database running is in noarchivelog mode .
在Alert.log的日志里面看到下面的message:
Completed writing zeroblks thread 1 seq 49
Symbol file D:\app\oracle\product\11.2.0\dbhome_1\BIN\oracommon11.SYM does not match binary.
Symbol TimeStamp=4bb5eaac, Module TimeStamp=0 are different
Symbol file D:\app\oracle\product\11.2.0\dbhome_1\BIN\oraclsra11.SYM does not match binary.
Symbol TimeStamp=4bb4cf99, Module TimeStamp=0 are different
Incident 28970 created, dump file: d:\app\oracle\diag\rdbms\oratest\oratest\incident\incdir_28970\oratest_ora_4508_i28970.trc
ORA-00600: internal error code, arguments: [kcrfr_resize2], [201326592], [67100672], [], [], [], [], [], [], [], [], []
然后进入创建的incident dump file , 看到下面的 error message:
Dump continued from file: d:\app\oracle\diag\rdbms\oratest\oratest\trace\oratest_ora_4508.trc
ORA-00600: internal error code, arguments: [kcrfr_resize2], [201326592], [67100672], [], [], [], [], [], [], [], [], []
========= Dump for incident 28970 (ORA 600 [kcrfr_resize2]) ========
----- Beginning of Customized Incident Dump(s) -----
Dump of memory from 0x0D9E3640 to 0x0D9E3960
D9E3640 5ACAA5A6 00000005 0B200000 002CE34A [...Z...... .J.,.]
............................................
Repeat 1 times
D9E3880 00C00000 00000000 0025E15E 000CF200 [........^.%.....]
D9E3890 00009890 000059C7 00000000 0000013A [.....Y......:...]
D9E38A0 00000002 00000000 0010DC00 00000000 [................]
D9E38B0 00000000 0000C156 00000F39 00000033 [....V...9...3...]
D9E38C0 00000002 00000000 000001C0 00000000 [................]
D9E38D0 002D0555 00000000 00000000 00000000 [U.-.............]
D9E38E0 00000000 00000000 00000000 00000000 [................]
Repeat 1 times
D9E3900 00000000 00000000 00000000 00020003 [................]
D9E3910 D8385646 35E16BC9 D58A23DB 6CD128FA [FV8..k.5.#...(.l]
D9E3920 00000000 00000000 00000000 00000000 [................]
D9E3930 78BC1898 F47EDDE7 D4A6A8C3 06438DA4 [...x..~.......C.]
D9E3940 00000000 00000000 00000000 00000000 [................]
Repeat 1 times
----- End of Customized Incident Dump(s) -----
Symbol file D:\app\oracle\product\11.2.0\dbhome_1\BIN\oracommon11.SYM does not match binary.
Symbol TimeStamp=4bb5eaac, Module TimeStamp=0 are different
Symbol file D:\app\oracle\product\11.2.0\dbhome_1\BIN\oraclsra11.SYM does not match binary.
Symbol TimeStamp=4bb4cf99, Module TimeStamp=0 are different
然后试图使用SQL> recover database ,继续error ,
ORA-01152: file 1 was not restored from a sufficiently old backup
ORA-01110: data file 1: 'D:\APP\ORACLE\ORADATA\ORATEST\SYSTEM01.DBF'
换一种方式做恢复:
这种恢复方式,不会自动去找在线redo日志文件,所以必须要手工指定!
SQL> recover database using backup controlfile until cancel;
ORA-00279: change 2970487 generated at 01/01/1988 18:12:18 needed for thread 1
ORA-00289: suggestion :
D:\APP\ORACLE\FLASH_RECOVERY_AREA\ORATEST\ARCHIVELOG\2012_08_25\O1_MF_1_49_%U_.A
RC
ORA-00280: change 2970487 for thread 1 is in sequence #49
Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
D:\app\oracle\oradata\ORATEST\redo01.log
Log applied.
Media recovery complete.
SQL> alter database open;
alter database open
*
ERROR at line 1:
ORA-01589: must use RESETLOGS or NORESETLOGS option for database open
恢复成功后需要使用resetlogs方式打开数据库,这个时候需要对库进行一次全部的备份。
SQL> alter database open resetlogs;
Database altered.
@@另一种方式是重建控制文件