咨询微信: dbservice1234 7 x 24 在线支持!

アーカイブログモードでORA-255が発生して起動できない

アーカイブログモードでORA-255が発生して起動できない

 

ORACLEデータベース によくあるエラ の解決策

プロのOracle Databaseの復旧サービスを提供
携帯番号: +86 13764045638 メール:service@parnassusdata.com

 

 

[問題]
アーカイブログモードで運用中にデータベースがダウンし、
以下のエラーが発生して起動できなくなりました。

ORA-00255: Error archiving log (name) of thread (num), sequence # (num)
ORA-00312: Online log (num) thread (num):  (logfile name)
ORA-00334: Archived log: (name)
ORA-00354: Corrupt redo log block header
ORA-00353: Log corruption near block (num) change (str) time (str)

STARTUP時のalert.logには、Crash recovery completed successfullyと
表示されているので、カレントのオンラインREDOログは正しく読み込めています。


[原因]
REDOログファイルが破損しているために、アーカイバプロセス(ARCH)が
REDOログをアーカイブできずにエラーとなっています。


[対処]
データベースがダウンした後のため、STARTUP後にはクラッシュリカバリが
行われます。そのため、カレントのオンラインREDOログが存在し、Oracleが
読み込める状態にあることがリカバリの条件です。

注意:上記条件を満たしていたとしても以下の対処方法による復旧を保証する
ものではございません。
また以下の対処方法を実施する前後に必ずデータベースのFULL BACKUPを取得
してください。アーカイブできないREDOログをアーカイブせずに起動するため、
以前に取得されていたバックアップからの完全媒体回復はできなくなります。
(不完全媒体回復は可能)

以下の対処方法によって、ARCHプロセスが破損したREDOログをアーカイブすることを
とめることができます。これによって、データベースは次のオンラインREDOログに
スイッチすることができ、データベースをOPENすることができます。

対処方法1 (シングルインスタンスの場合)
STARTUP MOUNT
ALTER DATABASE NOARCHIVELOG;
ALTER DATABASE OPEN; 
ALTER SYSTEM SWITCH LOGFILE;
SHUTDOWN NORMAL
STARTUP MOUNT
ALTER DATABASE ARCHIVELOG;
ALTER DATABASE OPEN;

対処方法2
STARTUP MOUNT
ALTER DATABASE CLEAR UNARCHIVED LOGFILE '<log_file_name_from_ORA-312_error>';
ALTER DATABASE OPEN;