制御ファイルのリストア

データベースの物理構造が格納された制御ファイルをリストアできます。リストアする前に、ファイルを見つける必要があります。ファイルを見つける際、データベースが開いていることを確認します。

以下の手順に従います。

  1. 制御ファイルをリストアするコンピュータにログインします。
  2. 以下のコマンドを使用して、制御ファイルを見つけます。
  3. SQL> SHOW PARAMETER CONTROL FILES;

  4. 制御ファイルをリストアする前に、データベースの状態を変更して、アンマウントまたはシャットダウンします。
  5. SQL> STARTUP NOMOUNT;

    SQL> SHUTDOWN IMMEDIATE;

  6. Arcserve UDP コンソールにログインします。
  7. リストア ウィザードを使用してコントロール ファイルをリストアします。リストア プロセスの詳細については、「復旧ポイントからリストアする方法」を参照してください。
  8. ディスティネーション コンピュータにログインします。
  9. 特定のフォルダに移動して、制御ファイルがリストアされていることを確認します。
  10. データベースをマウントして、データベースのリカバリを開始します。
  11. SQL> STARTUP MOUNT

  12. RECOVER コマンドを、USING BACKUP CONTROLFILE 句を付けて入力します。
  13. SQL> RECOVER DATABASE USING BACKUP CONTROLFILE

  14. データベース リカバリ プロセスが開始されます。
  15. (オプション)UNTIL CANCEL 句を指定して、不完全リカバリを実行します。
  16. SQL> RECOVER DATABASE USING BACKUP CONTROLFILE UNTIL CANCEL

  17. 要求されたアーカイブ ログを適用します。
  18. 注: 必要なアーカイブ ログがない場合、必要な REDO レコードがオンライン REDO ログにあることを意味します。この状態は、インスタンスが失敗したときに、アーカイブされていない変更がオンライン ログにあると発生します。オンライン REDO ログ ファイルのフル パスを指定し、Enter キーを押すことができます(適切なログが見つかるまでにこの操作を数回試行する必要がある場合があります)。
  19. 以下のコマンドを入力して、データベースの REDO ログに関する制御ファイル情報を確認します。
  20. SQL>SELECT * FROM V$LOG;

  21. (オプション)以下のコマンドを入力して、グループのすべてのメンバの名前を確認します。
  22. SQL>SELECT * FROM V$LOGFILE;

  23. 例: 要求されたアーカイブ ログを適用した後に、以下のメッセージが表示される場合があります。
  24. ORA-00279: change 55636 generated at 24/06/2014 16:59:47 needed for thread 1

    ORA-00289: suggestion e:\app\Administrator\flash_recovery_area\orcl\ARCHIVELOG\2014_06_24\ O1_MF_1_2_9TKXGGG2_.ARC

    ORA-00280: change 55636 for thread 1 is in sequence #24

    Specify log: {<RET>=suggested | filename | AUTO | CANCEL}

  25. オンライン REDO ログ ファイルのフル パスを指定して、Enter キーを押します。
  26. 例: E:\app\Administrator\oradata\orcl\redo01.log
  27. 注: 正しいログを取得するまで、フル パスを複数回指定する必要があります。
  28. 以下のメッセージが表示されます。
  29. Log applied

    Media recovery complete

  30. リカバリ プロセスが完了した後に、RESETLOGS 句を使用してデータベースを開きます。
  31. SQL> ALTER DATABASE OPEN RESETLOGS;

    失われた制御ファイルがリカバリされました。