【TRY! ORACLE MASTER】Silver DBA11g 編
(第18回 バックアップ・リカバリ)

みなさん、こんにちは。TRY! ORACLE MASTER シリーズ第18回。ORACLE MASTERの勉強は順調に進んでいますか?さて、今回は「バックアップ・リカバリ」から出題します。

問題(34)

本番データベースでは、RESETLOGSオプションを使用した不完全リカバリによって、REDOログのログ順序番号が1にリセットされる可能性が あります。この場合に、アーカイブ・ログ・ファイルの上書きを避けるためのネーミングを適用したいと思います。次のうち最適なアーカイブ・ログ・ファイル のネーミングはどれですか。

  1. ARC%t.arc
  2. ARC%t_%d.arc
  3. ARC%t_%d_%s.arc
  4. ARC%s.arc
  5. ARC%t_%s_%r.arc

 

 


 

解答と解説:

正解は 5. です。

アーカイブ・ログ・ファイルのネーミングには次のワイルドカード文字を使用できます。
    %t・・・・・スレッド番号
    %s・・・・・ログ順序番号
    %r・・・・・リセットログID
不 完全リカバリの実行により、ログ順序番号がリセットされてしまうと「%r」を使用していないアーカイブ・ログ・ファイル名は重複してしまい、以前のインカ ネーションのファイルは上書きされてしまいます。「%r」はログ順序番号がリセットされるとカウントアップする数値なので、不完全リカバリ後もアーカイ ブ・ログ・ファイル名を一意に保ちます。

この問題では、不完全リカバリ、RESETLOGS、といった重要なキーワードも出てきました。それぞれの内容について確認しておいてください。

 


 「バックアップ・リカバリ」から2問目の出題です。
 

 

問題(35)

メモリー障害によってインスタンス障害が発生しました。再起動時、インスタンス・リカバリが実行されますが、REDOの適用はどこから始まり、どこで終了しますか。

  1. ログ順序番号の最小のREDOログ・ファイルから最終のREDOログ・ファイル
  2. 最後のチェックポイント位置以降のすべてのREDOログ・エントリ
  3. 最後のチェックポイント位置より前のすべてのREDOログ・エントリ
  4. 最後のコミットより前のすべてのREDOログ・エントリ
  5. 状態がCURRENTであるREDOログ・ファイルの先頭レコードから最終レコードまで
 
 

 

解答と解説:

正解は、2. です。

インスタンス・リカバリでは、REDOを適用することによってデータ・ファイルに書き込まれなかった変更を反映します。データ・ファイルにすでに書 き込まれた内容を追跡するためにチェックポイントが使用されます。これはチェックポイントが発生すると一定のSCNまでのデータが確実にデータ・ファイル に記録されているためです。このため、インスタンス・リカバリ時には最後のチェックポイント位置以降のREDOがすべて適用されます。

ところで、4.は違うの?という疑問を持たれた方もいらっしゃるでしょう。障害時にまだコミットされていなかったトランザクションが反映されてしまっては困ります。ただ、これは一旦すべてのREDOを適用した上で改めてロールバックを行います。

REDOの適用をロールフォワードと呼びます。ロールフォワードしてから、ロールバックの順です。ロールフォワードが完了した時点でデータベースはOPEN状態となることも合わせて覚えておいてください。


     
今回は如何でしたでしょうか?
さて、次回のテーマは「データの移動」です。お楽しみに!



前週のTRY!<<  >>次週