>> はじめに |
|
前回では、Oracle RMAN APMによるバックアップと、手始めにEXAMPLE表領域のリストア、リカバリを行いました。今回はそれよりも手ごわいSYSTEM表領域と制御ファイルです。考え方としては、Oracle Online APMと似ているので、併せて参照してみてください。
>> SYSTEM表領域を含むリカバリ |
|
最初に状態を確認しておきます。
|
次に、SYSTEM表領域とUSER表領域に壊滅的な障害を発生させるために、リネームします。
|
状態を確認すると、ファイルがオープンできていないことがわかりますので、強制シャットダウンの後に、mount状態で起動します。
|
次に、NetVaultのGUIから障害が発生している表領域を指定して、バックアップ・ジョブの作成を行います。GUIから簡単にリストアが実行できるのは、NetVaultのOracle RMAN APMの大きな利点です。
なお、リカバリ作業は個別に行う必要があるため、この場合にはチェックを入れないようにしてください。
また、リストア時には必ずアカウントと対応するパスワードの入力を行うことが必須になっています。アカウントはデフォルトが最初から入力されていますが、パスワードは入っていませんので、注意してください。正しい設定が行われていない場合には、エラーになります。
Oracle RMANのリストアは時として、メインのリストア・ジョブが実行された後に、"Restore subtask"として、子ジョブが実行されることがあります。これらは、リストアする対象の数によっても異なってきます。最終的にすべてのリストア・ジョブが正常に完了することを確認しておきます。
リストア後、"recover database"を実行し、データベースをオープンすると正常にリカバリされていることが確認できました。
|
>> 制御ファイルのリカバリ |
|
通常制御ファイルは、多重化されており、バックアップ・データから復旧するような事態はよっぽどの事と考えるべきですが、Onlineの時と同様にすべてに壊滅的な障害が発生し、"ALTER DATABASE BACKUP CONTROL FILE TO"コマンドによって出力されたデータなども一切ない場合を想定してみます。
まずは、すべての制御ファイルを破壊します。
|
制御ファイルが破壊されたため、正常ではない状態であることが確認できますので、強制シャットダウン後、nomountで起動します。
|
実は、制御ファイルのリカバリはRMANの場合にはうまく行うことができません。(別途解説予定のリカバリカタログ使用時を除く)これは、リストアに必要な情報自体が制御ファイルに入っているためです。このような場合には、特別なPL/SQLを使用し復旧する事が必要です。なお、これらの手順は、Oracle社のMetalink掲載 Doc ID:Note:60545.1 "How to Extract Controlfiles, Datafiles, and Archived Logs from RMAN Backupsets" に詳細が掲載されており、そのスクリプトに若干手を加えたものになります。動作についての保証はありませんので、詳細につきましてはMetalinkをご参照ください。
restore_controlfile.sqlという名前で、以下のスクリプトを保存します。
|
ピース名は、NetVaultのリストア画面から確認することが出来ます。例えば、今回のケースでは、ピース名は"ora10g:#286:ora10g:4_556647701:O10G_1114499941"となります。
また、Contol fileのファイルパスは、今回の環境では"/opt/oracle/oradata/o10g/control01.ctl"を一つ選択します。複数ある場合には、後で手動でコピーすることになります。そのため、スクリプト内の記入が必要なエントリは以下のようになります。
v_pieceName(1) := 'ora10g:#286:ora10g:4_556647701:O10G_1114499941';
DBMS_BACKUP_RESTORE.restoreControlFileTo(cfname=>'/opt/oracle/oradata/o10g/control01.ctl');
スクリプトが完成したら、早速実行します。
|
最終的にファイルとして、リストアされましたので、後は複数コピーします。
|
その後の手順は、Oracle Onlineの時と同様なので、詳細は割愛します。
|
正常に起動したあとは、やはりresetlogs付きでopenしたので、古いアーカイブログを削除しておくことと、temp表領域の再作成は行っておきます。
|
>> 次回は・・・ |
|
前回お約束のリカバリカタログの使用や複数チャネルの話ができませんでしたので、次回取り上げる予定です。お楽しみに!