Recovery Managerでバックアップを実行しようとすると以下のようにアーカイブログが識別できないというエラーが発生することがあります。
RMAN> RUN { 2> backup incremental level = 0 database format 'C:\Oracle\Backup\%d_DBF_%U_%Y%M%D.BAK' plus archivelog format 'C:\Oracle\Backup\%d_ARC_%U_%Y%M%D.BAK' delete all input; 3> backup current controlfile format 'C:\Oracle\Backup\%d_CTL_%U_%Y%M%D.BAK'; 4> } 5> backupが開始されました(開始場所: 04-10-19) 現在のログがアーカイブされました。 リカバリ・カタログのかわりにターゲット・データベース制御ファイルを使用しています チャネル: ORA_DISK_1が割り当てられました チャネルORA_DISK_1: sid=18 devtype=DISK RMAN-00571: =========================================================== RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS =============== RMAN-00571: =========================================================== RMAN-03002: failure of backup command at 10/19/2004 20:06:07 RMAN-06059: expected archived log not found, lost of archived log compromises recoverability ORA-19625: ファイルC:\ORACLE\ORADATA\ORCL\ARCHIVE\1_20.DBFの識別中にエラーが発生しました。 ORA-27041: ファイルをオープンできません。 OSD-04002 Recovery Managerが完了しました。
このエラーはバックアップを実行する前にOSコマンドによってアーカイブログを削除した時に発生します。
(制御ファイル中のアーカイブログ情報と実際のアーカイブログファイルが矛盾した状態になっています)
このエラーを回避するには、以下のようにRMANでbackupコマンドを実行する前に、crosscheckコマンドを実行し、制御ファイル中のアーカイブログファイル情報のチェックを行う必要があります。
RMAN> RUN { 2> crosscheck archivelog all; 3> backup incremental level = 0 database format 'C:\Oracle\Backup\%d_DBF_%U_%Y%M%D.BAK' plus archivelog format 'C:\Oracle\Backup\%d_ARC_%U_%Y%M%D.BAK' delete all input; 4> backup current controlfile format 'C:\Oracle\Backup\%d_CTL_%U_%Y%M%D.BAK'; 5> } 6>