数据库open的时候报错:
ORA-00600: 内部错误代码, 参数: [kcratr_scan_lastbwr], [], [], [], [], [], [], [], [], [], [], []
查看alert log
alter database open
Beginning crash recovery of 1 threads
parallel recovery started with 3 processes
Started redo scan
Errors in file /data/oracle_db/diag/rdbms/orcl/oracledb/trace/oracledb_ora_20513.trc (incident=38958):
ORA-00600: 内部错误代码, 参数: [kcratr_scan_lastbwr], [], [], [], [], [], [], [], [], [], [], []
Incident details in: /data/oracle_db/diag/rdbms/orcl/oracledb/incident/incdir_38958/oracledb_ora_20513_i38958.trc
Aborting crash recovery due to error 600
Errors in file /data/oracle_db/diag/rdbms/orcl/oracledb/trace/oracledb_ora_20513.trc:
ORA-00600: 内部错误代码, 参数: [kcratr_scan_lastbwr], [], [], [], [], [], [], [], [], [], [], []
Errors in file /data/oracle_db/diag/rdbms/orcl/oracledb/trace/oracledb_ora_20513.trc:
ORA-00600: 内部错误代码, 参数: [kcratr_scan_lastbwr], [], [], [], [], [], [], [], [], [], [], []
ORA-600 signalled during: alter database open...
Wed Jul 20 17:32:17 2016
Trace dumping is performing id=[cdmp_20160720173217]
Wed Jul 20 17:32:17 2016
Sweep [inc][38958]: completed
Sweep [inc][38957]: completed
Sweep [inc2][38958]: completed
Sweep [inc2][38957]: completed
Wed Jul 20 17:35:24 2016
ALTER SYSTEM SET memory_max_target='0' SCOPE=SPFILE;
ALTER SYSTEM SET memory_target='0' SCOPE=SPFILE;
Wed Jul 20 17:35:57 2016
ALTER SYSTEM SET sga_max_size='8G' SCOPE=SPFILE;
Wed Jul 20 17:36:14 2016
ALTER SYSTEM SET pga_aggregate_target='2G' SCOPE=SPFILE;
Shutting down instance (abort)
License high water mark = 4
USER (ospid: 20513): terminating the instance
Instance terminated by USER, pid = 20513
查看trace文件:
-- Redo read_disk statistics --
Read rate (ASYNC): 28Kb in 0.01s => 2.73 Mb/sec
Longest record: 2Kb, moves: 0/84 (0%)
Change moves: 1/9 (11%), moved: 0Mb
Longest LWN: 8Kb, moves: 0/17 (0%), moved: 0Mb
Last redo scn: 0x0000.04809613 (75535891)
----------------------------------------------
******** WRITE VERIFICATION FAILED ********
File 3 Block 336 (rdba 0xc00150)
BWR version: 0x0000.0480960c.01 flg: 0x04 ---------我猜测是因为BWR (Block Written Record) 的版本和disk上的版本不一致导致的,应该recover一下看是否可以解决。
Disk version: 0x0000.04808e40.02 flag: 0x04
REDO RECORD - Thread:1 RBA: 0x0005e7.0000d430.0028 LEN: 0x0044 VLD: 0x02
SCN: 0x0000.04809613 SUBSCN: 1 07/20/2016 17:44:01
CHANGE #1 MEDIA RECOVERY MARKER SCN:0x0000.00000000 SEQ:0 OP:23.1 ENC:0
Block Written - afn: 3 rdba: 0x00c00150 BFT:(1024,12583248) non-BFT:(3,336)
scn: 0x0000.0480960c seq: 0x01 flg:0x04
END OF DUMP REDO
Incident 46958 created, dump file: /data/oracle_db/diag/rdbms/orcl/oracledb/incident/incdir_46958/oracledb_ora_20795_i46958.trc
ORA-00600: ??????, ??: [kcratr_scan_lastbwr], [], [], [], [], [], [], [], [], [], [], []
ORA-00600: ??????, ??: [kcratr_scan_lastbwr], [], [], [], [], [], [], [], [], [], [], []
ORA-00600: ??????, ??: [kcratr_scan_lastbwr], [], [], [], [], [], [], [], [], [], [], []
解决:
recover database;
alter database open;