ページの先頭行へ戻る
ETERNUS SFRecovery Manager for Oracle 14.0 説明書

5.5.2 リカバリー

コマンドを使用して、リカバリーを行う手順を説明します。

ポイント

  • クラスタ環境の場合は、プライマリノードで実行してください。

  • リカバリーを行う前に、「5.3 リカバリーの前に」を参照して、準備作業をすべて完了してください。

注意

  • データベースの破損状況によっては、リカバリー処理中にターゲットデータベースが停止することがあります。

  • リスナーが停止している場合、リカバリーができません。リスナーを起動してから、リカバリーを行ってください。

  • 破損直前までのデータベース更新履歴をデータベースに反映する必要があるため、バックアップ完了時点から破損直前までのすべてのアーカイブログが存在する必要があります。また、オンラインREDOログの更新履歴がすべて適用可能である必要があります。ログの消失のためにリカバリーに失敗した場合は、リストア機能を使用して、データベースの復旧を行ってください。

  • 以下の場合は、データベース破損直前までのデータを復旧することができません。リストアで、データベースを復旧してください。

    • カレントのオンラインREDOログ・グループが破損している場合

    • バックアップ以降に生成されたアーカイブログが欠落している場合

  • データベースのログがリセットされ(RESETLOGS)、過去に取得したバックアップが無効となる場合があります。その場合はリカバリー実施前に表示されるリカバリー計画に警告メッセージが表示されますので、データベース復旧後、すぐにバックアップを取得してください。

  • 以下の場合は、DBチェックで破損が検知できないことがあるため、正常にリカバリーできないことがあります。

    • 1つのREDOログ・グループ内の、一部のREDOログ・メンバーが破損している場合

    • 非アクティブなREDOログ・グループが破損している場合

    • 一時表領域・一時ファイルが破損している場合

  • データベースがノーアーカイブ・モードの場合は、正常にリカバリーできません。

  • RAC構成の場合、システムダウンしているクラスタノードがある場合、データベースの復旧ができません。すべてのクラスタノードを起動した後、リストアを行ってください。

  • クラスタ構成の場合、リカバリーを行う前に、PRIMECLUSTERのクラスタリソースを復旧させる必要があります。詳細については、「5.3.3 PRIMECLUSTERリソースの確認」を参照してください。

  • RAC構成の場合、リカバリー時、リカバリーを行うノードからすべてのクラスタノードのアーカイブログ出力領域が参照できる必要があります。リカバリー実行前に、リカバリーを行うノードですべてのクラスタノードのアーカイブログ出力領域をリモートマウントするなどの対処をしておいてください。

  • RAC構成の場合、クラスタノード間でシステム時刻が合っていることを確認してください。ノード間でシステム時刻がずれていると、リカバリーが失敗することがあります。その場合は、復元ポイントにログ順序番号を指定して、リストア機能でデータベースを復旧してください。

  • リカバリー処理が正常に終了した場合でも、リカバリー後のDBチェックで異常を検知していることがあります。必ず、実行ログの内容を確認してください。実行ログの確認については、「第11章 実行ログ」を参照してください。

  1. rootユーザーでログインします

    データベースサーバにrootユーザーでログインします。
    root以外のユーザーでログイン後、suコマンドを実行し、rootユーザーに変更することもできます。

  2. リカバリーコマンドを実行します

    リカバリーコマンドでリカバリーを実行してください。

    # installdir/bin/rmforecovery confname -a

    installdir : 本製品のインストールディレクトリ
    confname : 環境設定名

    ポイント

    コマンド実行時に「-prechk」パラメーターをつけてリカバリーコマンドを実行すると、直前に実行したDBチェックコマンドのチェック結果を元にリカバリー計画を設定します。「-prechk」パラメーターをつけてリカバリーを行う場合は、必ず事前にDBチェックコマンドでDBチェックを実行してください。
    リカバリーコマンドおよびDBチェックコマンドの詳細については、「第10章 コマンドリファレンス」を参照してください。

  3. リカバリー計画を確認します

    リカバリー計画が設定され、標準出力に表示されます。
    提示されたリカバリー計画内容を確認してください。

    ボリュームをマウントしています・・・
    インスタンスチェックを実行しています・・・
    リカバリー計画を作成しています・・・
     制御ファイルリストア:しない
    表領域リストア:する
    表領域リストア方法:RMAN
    修復対象:
    USERS
    一時ファイル修復:しない
    REDOログ・メンバー修復:しない
    メディアリカバリー:する
    完全リカバリー
    表領域リカバリー
    RESETLOGS:なし
    オンライン復旧
    復元ポイント:破損直前
    指定ポイント:-
    データベース復旧地点:- ボリュームをアンマウントしています・・・ RMFO-53000 リカバリー準備処理に成功しました。

    注意

    • リカバリー計画には、提示したリカバリー計画でリカバリーを実行するに当たっての注意事項や警告メッセージも表示されますので、必ず内容を確認・了承の上、リカバリーを続行してください。

    • リカバリー計画に、「[注意]RESETLOGSが実行されるため、過去に取得したバックアップはすべて無効になります。」という警告メッセージが出力される場合があります。このメッセージが表示された場合は、リカバリー時にREDOログがリセットされ、リカバリー実施前に取得したバックアップがすべて無効になるため、データベース復旧後、すぐにオンラインバックアップを取得する必要があります。

  4. リカバリー処理を実行ます

    リカバリー計画が表示された後、以下のメッセージが表示されます。

    ok?[y/n]

    提示されたリカバリー内容でよければ、「y」を入力してEnterキーを押してください。
    リカバリー処理が実行されます。

    ok?[y/n]
    y<Enter>
    ボリュームをマウントしています・・・
    リカバリ・カタログ・データベースを起動しています・・・
    表領域をオフラインにしています・・・
    表領域をリストアしています・・・
    表領域のリカバリーを行っています・・・
    表領域をオンラインにしています・・・
    リカバリ・カタログ・データベースを停止しています・・・
    DBチェックを実行しています・・・
    ボリュームをアンマウントしています・・・
    RMFO-51000 データベースのリカバリーに成功しました。

    リカバリーを中断する場合は、「n」を入力してEnterキーを押してください。
    リカバリー処理がキャンセルされます。

    ok?[y/n]
    n<Enter>
    Database Recovery Canceled.
  5. 実行結果を確認します

    コマンド処理が完了すると、処理終了メッセージが表示されます。
    コマンド終了ステータス、および、処理終了メッセージで、コマンドの処理結果を確認してください。コマンド終了ステータスについては、「第10章 コマンドリファレンス」を参照してください。処理終了メッセージについては、「付録B メッセージ」を参照してください。
    実行ログを確認して、エラーが発生していないことを確認してください。実行ログについては、「第11章 実行ログ」を参照してください。

    注意

    • リカバリー処理でREDOログがリセットされ、リカバリー実施前に取得したバックアップがすべて無効になった場合、データベース復旧後、すぐにオンラインバックアップを取得する必要があります。

    • データファイルバックアップ方法に「OPC」もしくは「QuickOPC」を指定している場合、リストア処理の物理コピーが完了していることを確認し、オンラインバックアップを実行してください。

    • リカバリー処理が異常終了した場合の対処については、「5.7 リカバリー異常終了時の対処について」を参照してください。