ORA-00314,redolog损坏,或丢失处理方法
ORA-00314,redolog损坏,或丢失处理方法
alertsid.log报错信息:
Fri Sep 27 15:18:39 2013 Started redo scan Fri Sep 27 15:18:39 2013 Errors in file /oracle/admin/lixora/udump/lixora_ora_23439.trc: ORA-00314: log 2 of thread 1, expected sequence# 335 doesn't match 331 ORA-00312: online log 2 thread 1: '/oracle/oradata/lixora/redo02.log' Fri Sep 27 15:18:39 2013 Aborting crash recovery due to error 314
查看当前日志组信息:
SQL> select * From v$log; GROUP# THREAD# SEQUENCE# BYTES MEMBERS ARC STATUS ---------- ---------- ---------- ---------- ---------- --- ---------------- FIRST_CHANGE# FIRST_TIM ------------- --------- 1 1 334 52428800 1 NO ACTIVE 3613897 27-SEP-13 4 1 333 104857600 1 NO INACTIVE 3613895 27-SEP-13 3 1 336 52428800 1 NO CURRENT 3613948 27-SEP-13 2 1 335 52428800 1 NO ACTIVE 3613899 27-SEP-13
如果查询v$log發現損壞的online redo log是inactive, 說明該組日志是非當前日志, 而且已經歸檔完成 ( STATUS 是INACTIVE , ARCHIVE 是YES ) .
處理方法(適用於歸檔及非歸檔數據庫) :
使用clear 命令清理這個文件所在的redo log group .
SQL> alter database clear logfile group 3 ;
如果該日志組還沒有歸檔 (STATUS 是INACTIVE , ARCHIVE 是 NO )
那麼需要使用如下命令
SQL> alter database clear unarchived logfile group 3 ;
然後打開數據庫 , 備份 .