Hitachi Protection Manager Software ユーザーズガイド
前提条件を次に示します。
- データベースがARCHIVELOGモードである。
- 復旧対象の表領域のバックアップが取得されている。
- 次の条件のどれかに当てはまる。
- アーカイブ済みREDOログファイルが欠落しているため完全リカバリに失敗する。
- カレントまたはアクティブなオンラインREDOログファイルが損失している。
- ユーザーの誤操作によって表の切り捨てや誤ったトランザクションが発生した。
- 表領域を誤って削除した。
- 任意の時点の制御ファイルとその時点までのアーカイブ済みREDOログファイルのバックアップが存在する。
完全リカバリできない場合に任意の時点まで復旧するには:
- バックアップ情報を確認します。
drmoracatコマンドでバックアップ情報を確認します。PROMPT> drmoracat ORA1 -rac DATABASE-NAME: RAC1 INSTANCE: ORA1 BACKUP-ID:0000000001 BACKUP-MODE: ONLINE (RAC) INSTANCE: ORA1 ORIGINAL-ID: 0000000001 START-TIME:2002/06/01 10:00:00 END-TIME: 2002/06/01 10:03:00 HOSTNAME: DB-SRV T OBJECT FILE FS DG DEVICE COPY-GROUP T TBS1 /mnt/TBS1.dbf /mnt DG01 /dev/rdsk/c4t20t10 ORA001,B001 T - - - - - ORA001,B001 PROMPT>- Oracleインスタンス固有のOracleファイルをリストアします。
リストアを実行するノード固有のOracleファイル(UNDO表領域など)が破損している場合は,「9.8.2 RACインスタンスをテープ媒体へオンラインバックアップする」の手順1で取得したUNDO表領域のバックアップをリストアします。PROMPT> drmorarestore 0000000001 -resync -target UNDOTBS KAVX0001-I drmorarestoreコマンドを開始します。 … KAVX0002-I drmorarestoreコマンドを終了します。 PROMPT>- バックアップカタログをインポートします。
バックアップを実行したノードとは異なるノードでリストアを実行する場合は,「9.8.2 RACインスタンスをテープ媒体へオンラインバックアップする」の手順4でエクスポートしたRAC共有Oracleファイルのバックアップカタログをインポートします。PROMPT> drmdbimport -f /tmp/EX-FILE1.drm KAVX0001-I drmdbimportコマンドを開始します。 KAVX0418-I ファイル名で指定されたバックアップ情報をバックアップカタログに追加しました。 インポートされたバックアップID = 0000000002 KAVX0002-I drmdbimportコマンドを終了します。 PROMPT>- RAC共有のOracleファイルをリストアします。
障害が発生したデータファイルのバックアップを副ボリュームからリストアします。PROMPT> drmorarestore 0000000002 -resync KAVX0001-I drmorarestoreコマンドを開始します。 … KAVX0002-I drmorarestoreコマンドを終了します。 PROMPT>- SYSTEM表領域またはUNDO表領域をリストアした場合,データベースをマウンド状態で起動します。
OSDBAグループのユーザーでログインし,SQL*PLUSなどでOracleデータベースに接続します。
SYSTEM表領域またはUNDO表領域をリストアした場合,Oracleデータベース停止状態でリストアコマンドが完了します。その場合,SYSDBA権限を持つOracleユーザーで,Oracleデータベースをマウント状態で起動します。
SYSTEM表領域またはUNDO表領域をリストアしない場合,Oracleデータベースは起動状態でリストアコマンドが実行されますので,Oracleデータベースの起動は必要ありません。PROMPT> sqlplus / as sysdba SQL> startup mount SQL>- アーカイブ済みREDOログファイルのバックアップ情報を確認します。
drmoralogbackp -vコマンドで必要なアーカイブ済みREDOログファイルのバックアップが存在するか確認します。PROMPT> drmoralogbackup ORA1 -v 0001 BACKUP_ID :001 DATE :2003-08-13 17:58:30 CONTOROL FILE :/var/opt/drm/log/backup/oracle/ORA1/control1.ctl00001 FILE NAME :/var/opt/drm/log/backup/oracle/ORA1/arc0001.arc SEQUENCE :100 FIRST_CHANGE :30182 NEXT_CHANGE :30258 FIRST_TIME :2003-08-13 16:45:13 NEXT_TIME :2003-08-13 17:02:08 FILE NAME :/var/opt/drm/log/backup/oracle/ORA1/arc0002.arc SEQUENCE :101 FIRST_CHANGE :30258 NEXT_CHANGE :30419 FIRST_TIME :2003-08-13 17:02:08 NEXT_TIME :2003-08-13 17:16:58 PROMPT>- アーカイブ済みREDOログファイルをリストアします。
drmorabackupコマンドおよびdrmoralogbackupコマンドによってログ格納ディレクトリ※にバックアップされたアーカイブ済みREDOログファイルのバックアップファイルをOSのcpコマンドなどでアーカイブ済みREDOログファイル出力先にリストアします。
RACを構成するすべてのノードのアーカイブ済みREDOログファイルが,リカバリを実行するノードから参照できる必要があります。
- 注※
- <drmorainitコマンドで指定したログ格納ディレクトリ>/<Oracleインスタンス名>
PROMPT> cp -p /var/opt/drm/log/backup/oracle/ORA1/arc0001.arc /df500-1/ArchiveLog/1/arc0001.arc PROMPT>- 制御ファイルをリストアします。
表領域を削除してしまった場合は,表領域を削除する前に取得したバックアップ制御ファイルをリストアします。
リストア先は現行のすべての制御ファイルの格納先です。PROMPT> cp -p /var/opt/drm/log/backup/oracle/ORA1/control1.ctl00001 /disk2_0/u01/app/control01.ctl PROMPT> cp -p /var/opt/drm/log/backup/oracle/ORA1/control1.ctl00001 /disk2_0/u01/app/control02.ctl PROMPT> cp -p /var/opt/drm/log/backup/oracle/ORA1/control1.ctl00001 /disk2_0/u01/app/control03.ctl PROMPT>- 不完全リカバリを実行します。
SYSDBA権限を持つOracleユーザーで,リストアしたアーカイブ済みREDOログファイルおよびオンラインREDOログファイルを使用して不完全リカバリを実施します。
リカバリが成功すると「Media recovery complete.」というメッセージが表示されます。SQL>recover database using backup controlfile until cancel;- データベースをオープンします。
SYSDBA権限を持つOracleユーザーで,Oracleデータベースをオープンします。
Oracleデータベースをオープンすると「Database altered.」というメッセージが表示されます。SQL> alter database open resetlogs;