一次rhel5.8的文件系统只读造成的ora-00354: corrupt redo log block header。
一次rhel5.8的文件系统只读造成的ora-00354: corrupt redo log block header。
wed jun 03 03:31:24 cst 2015
thread 1 advanced to log sequence 396 (lgwr switch)
current log# 3 seq# 396 mem# 0: /u01/app/oracle/oradata/orcl/redo03.log
wed jun 03 19:05:48 cst 2015
thread 1 advanced to log sequence 397 (lgwr switch) ----------------->从这个地方可以看出来:sequence 397为current redo log
current log# 1 seq# 397 mem# 0: /u01/app/oracle/oradata/orcl/redo01.log
wed jun 03 20:44:19 cst 2015
errors in file /u01/app/oracle/admin/orcl/bdump/orcl_j000_30071.trc:
ora-07445: exception encountered: core dump [kglats()+106] [sigsegv] [address not mapped to object] [0x000000000] [] []
ora-01403: no data found
wed jun 03 22:00:26 cst 2015
errors in file /u01/app/oracle/admin/orcl/bdump/orcl_j001_30285.trc:
ora-07445: exception encountered: core dump [kglhdiv_callback()+79] [sigsegv] [address not mapped to object] [0x0000000d4] [] []
thu jun 04 20:28:17 cst 2015
starting oracle instance (normal)
后来数据库实例重启(人为重启):
completed: alter database mount
thu jun 04 20:28:24 cst 2015
alter database open
thu jun 04 20:28:24 cst 2015
beginning crash recovery of 1 threads
parallel recovery started with 3 processes
thu jun 04 20:28:24 cst 2015
started redo scan
thu jun 04 20:28:24 cst 2015
completed redo scan
1210 redo blocks read, 287 data blocks need recovery
thu jun 04 20:28:25 cst 2015
started redo application at
thread 1: logseq 397, block 660827
thu jun 04 20:28:25 cst 2015
recovery of online redo log: thread 1 group 1 seq 397 reading mem 0
mem# 0: /u01/app/oracle/oradata/orcl/redo01.log
thu jun 04 20:28:25 cst 2015
completed redo application
thu jun 04 20:28:29 cst 2015
completed crash recovery at
thread 1: logseq 397, block 662037, scn 1359645
287 data blocks read, 287 data blocks written, 1210 redo blocks read
thu jun 04 20:28:30 cst 2015
lgwr: starting arch processes
arc0 started with pid=19, os id=3609
thu jun 04 20:28:30 cst 2015
arc0: archival started
arc1: archival started
lgwr: starting arch processes complete
arc1 started with pid=20, os id=3611
thu jun 04 20:28:30 cst 2015
thread 1 advanced to log sequence 398 (thread open) --->已经使用sequence 398,此时,sequence 398为current redo log
thread 1 opened at log sequence 398
current log# 2 seq# 398 mem# 0: /u01/app/oracle/oradata/orcl/redo02.log
successful open of redo thread 1
thu jun 04 20:28:30 cst 2015
mttr advisory is disabled because fast_start_mttr_target is not set
thu jun 04 20:28:30 cst 2015
arc0: becoming the 'no fal' arch
arc0: becoming the 'no srl' arch
thu jun 04 20:28:30 cst 2015
smon: enabling cache recovery
thu jun 04 20:28:30 cst 2015
arc1: becoming the heartbeat arch
thu jun 04 20:28:35 cst 2015
arc0: log corruption near block 385521 change 1314765 time ? --->发现redo log 有损坏
thu jun 04 20:28:35 cst 2015
errors in file /u01/app/oracle/admin/orcl/bdump/orcl_arc0_3609.trc:
ora-00354: corrupt redo log block header --->发现redo log header有损坏
ora-00353: log corruption near block 385521 change 1314765 time 06/03/2015 19:05:47
ora-00312: online log 1 thread 1: '/u01/app/oracle/oradata/orcl/redo01.log'
arc0: all archive destinations made inactive due to error 354
thu jun 04 20:28:35 cst 2015
arc0: closing local archive destination log_archive_dest_1: '/home/oracle/1_397_880950378.dbf' (error 354)
(orcl)
committing creation of archivelog '/home/oracle/1_397_880950378.dbf' (error 354)
thu jun 04 20:28:43 cst 2015
successfully onlined undo tablespace 1.
thu jun 04 20:28:43 cst 2015
smon: enabling tx recovery
thu jun 04 20:28:45 cst 2015
arch: archival stopped, error occurred. will continue retrying
thu jun 04 20:28:45 cst 2015
oracle instance orcl - archival error
thu jun 04 20:28:45 cst 2015
database characterset is zhs16gbk
thu jun 04 20:28:45 cst 2015
ora-16038: log 1 sequence# 397 cannot be archived
ora-00354: corrupt redo log block header
ora-00312: online log 1 thread 1: '/u01/app/oracle/oradata/orcl/redo01.log'
thu jun 04 20:28:45 cst 2015
errors in file /u01/app/oracle/admin/orcl/bdump/orcl_arc0_3609.trc:
ora-16038: log 1 sequence# 397 cannot be archived
ora-00354: corrupt redo log block header
ora-00312: online log 1 thread 1: '/u01/app/oracle/oradata/orcl/redo01.log'
opening with internal resource manager plan
replication_dependency_tracking turned off (no async multimaster replication found)
starting background process qmnc
qmnc started with pid=21, os id=3637
thu jun 04 20:28:49 cst 2015
completed: alter database open ------->db open了。open归open,无法归档的话,业务早晚会hang。
--->此时/u01/app/oracle/oradata/orcl/redo02.log,,是sequence 398,是current redo log。