联系:手机/微信(+86 17813235971) QQ(107644445)
标题:记录一次ORA-00316 ORA-00312 redo异常恢复
作者:惜分飞©版权所有[未经本人同意,不得以任何形式转载,否则有进一步追究法律责任的权利.]
正常运行的数据库报突然报ORA-00316: log 1 of thread 1, type 286 in header is not log file,异常终止
Fri Feb 21 08:44:42 2014 Thread 1 advanced to log sequence 591 (LGWR switch) Current log# 1 seq# 591 mem# 0: J:\ORADATA\ORCL\REDO01.LOG Fri Feb 21 15:31:20 2014 Errors in file c:\oracle\product\10.2.0\admin\orcl\bdump\orcl_lgwr_10312.trc: ORA-00316: log 1 of thread 1, type 286 in header is not log file ORA-00312: online log 1 thread 1: 'J:\ORADATA\ORCL\REDO01.LOG' Fri Feb 21 15:31:20 2014 Errors in file c:\oracle\product\10.2.0\admin\orcl\bdump\orcl_lgwr_10312.trc: ORA-00316: log 1 of thread 1, type 286 in header is not log file ORA-00312: online log 1 thread 1: 'J:\ORADATA\ORCL\REDO01.LOG' Fri Feb 21 15:31:20 2014 LGWR: terminating instance due to error 316 Fri Feb 21 15:31:20 2014 Errors in file c:\oracle\product\10.2.0\admin\orcl\bdump\orcl_j001_11328.trc: ORA-00316: log of thread , type in header is not log file Fri Feb 21 15:31:20 2014 Errors in file c:\oracle\product\10.2.0\admin\orcl\bdump\orcl_j000_14116.trc: ORA-00316: 日志 (用于线程 ) 标头中的类型 不是日志文件 Fri Feb 21 15:31:20 2014 Errors in file c:\oracle\product\10.2.0\admin\orcl\bdump\orcl_dbw1_8964.trc: ORA-00316: log of thread , type in header is not log file Fri Feb 21 15:31:22 2014 Errors in file c:\oracle\product\10.2.0\admin\orcl\bdump\orcl_dbw0_10592.trc: ORA-00316: log of thread , type in header is not log file ORA-27041: unable to open file OSD-04002: unable to open file O/S-Error: (OS 2) 系统找不到指定的文件。 ORA-27041: unable to open file OSD-04002: unable to open file O/S-Error: (OS 2) 系统找不到指定的文件。 Fri Feb 21 15:31:41 2014 Errors in file c:\oracle\product\10.2.0\admin\orcl\bdump\orcl_smon_11112.trc: ORA-00316: log of thread , type in header is not log file Fri Feb 21 15:31:41 2014 Instance terminated by LGWR, pid = 10312
数据库启动报ORA-00316错误
SQL> alter database open; alter database open * ERROR at line 1: ORA-00316: log 1 of thread 1, type 286 in header is not log file ORA-00312: online log 1 thread 1: 'J:\ORADATA\ORCL\REDO01.LOG'
alert日志信息,报ORA-00316 ORA-00312
Sun Feb 23 13:54:08 2014 Started redo scan Sun Feb 23 13:54:08 2014 Errors in file e:\oracle\product\10.2.0\admin\ora10g\udump\orcl_ora_5544.trc: ORA-00316: log 1 of thread 1, type 286 in header is not log file ORA-00312: online log 1 thread 1: 'J:\ORADATA\ORCL\REDO01.LOG' Sun Feb 23 13:54:08 2014 Aborting crash recovery due to error 316 Sun Feb 23 13:54:08 2014 Errors in file e:\oracle\product\10.2.0\admin\ora10g\udump\orcl_ora_5544.trc: ORA-00316: log 1 of thread 1, type 286 in header is not log file ORA-00312: online log 1 thread 1: 'J:\ORADATA\ORCL\REDO01.LOG' ORA-316 signalled during: alter database open...
通过dump redo header可以看出来redo header完全混乱了,里面很多数据文件内容在里面,初步估计系统或者硬件有问题(不稳定)导致该问题
LOG FILE #1: (name #3) J:\ORADATA\ORCL\REDO01.LOG Thread 1 redo log links: forward: 2 backward: 0 siz: 0x7d000 seq: 0x0000024f hws: 0x1 bsz: 512 nab: 0xffffffff flg: 0xa dup: 1 Archive links: fwrd: 0 back: 0 Prev scn: 0x0000.4f4a1951 Low scn: 0x0000.4f4e5400 02/21/2014 08:44:42 Next scn: 0xffff.ffffffff 01/01/1988 00:00:00 FILE HEADER: Software vsn=4280360459=0xff211e0b, Compatibility Vsn=103886850=0x6313002 Db ID=842019892=0x32303434, Db Name='01a0001' Activation ID=1107558657=0x42040101 Control Seq=842019892=0x32303434, File size=808464688=0x30303130 File Number=2417, Blksiz=2013738803, File Type=286 UNKNOWN descrip:"00-440201|广东省xxxxxx研究院|00014402010037" thread: 767 nab: 0x534e4906 seq: 0xbcfebcbd hws: 0xffffffff eot: 55 dis: 66 reset logs count: 0x7545245 scn: 0x0101.1e097178 Low scn: 0x4537.2022002c 01/15/2022 20:59:37 Next scn: 0x3734.46463135 04/30/2017 17:34:49 Enabled scn: 0x4345.37333038 10/22/2015 02:04:16 Thread closed scn: 0x3939.43303143 08/25/2024 00:11:31 Log format vsn: 0x46343835 Disk cksum: 0x1d09 Calc cksum: 0x70ed Terminal Recovery Stop scn: 0x3734.35304141 Terminal Recovery Stamp 03/17/2014 19:59:48 Most recent redo scn: 0x3636.31303134 Largest LWN: 758788710 blocks Miscellaneous flags: 0x41444534 Thread internal enable indicator: thr: 263902399, seq: 808464496 scn: 0x3032.30343431
因为当前redo完全损坏,尝试不完全恢复并结合隐含参数(_allow_resetlogs_corruption)拉库,出现错误ORA-00704 ORA-00604 ORA-01555
Sun Feb 23 14:03:37 2014 SMON: enabling cache recovery Sun Feb 23 14:03:39 2014 ORA-01555 caused by SQL statement below (SQL ID: 4krwuz0ctqxdt, SCN: 0x0000.4f4e5405): Sun Feb 23 14:03:39 2014 select ctime, mtime, stime from obj$ where obj# = :1 Sun Feb 23 14:03:39 2014 Errors in file e:\oracle\product\10.2.0\admin\ora10g\udump\orcl_ora_5504.trc: ORA-00704: bootstrap process failure ORA-00704: bootstrap process failure ORA-00604: error occurred at recursive SQL level 1 ORA-01555: snapshot too old: rollback segment number 11 with name "_SYSSMU11$" too small Error 704 happened during db open, shutting down database USER: terminating instance due to error 704
通过修改scn,让数据库顺利open