>> はじめに |
|
前回はSYSTEM以外の一部のUSER表領域のみに障害が発生した際の復旧方法でしたが、仮にディスクアレイ装置を使用していたとしても構成情報に障害が発生するなど、格納しているデータすべてに致命的な障害が発生することが比較的あります。
今回は、ほとんどのデータに障害が発生した場合を想定してみます。
>> 制御ファイルのバックアップについて |
|
本演習では、RMANリポジトリとして制御ファイルを使用してきましたが、この場合制御ファイルに障害が発生してしまうと、その復旧が非常に困難になります。
通常は、多重化されており(デフォルトで3つ同じものが用意されています)、よほどの事がない限りそれら全てに同時に障害が発生することはありません。Oracle社ではこれら制御ファイルの配置を分散したディスク装置上に行うよう推奨していますが、実構成では同じディスク装置内にすべて格納されているケースもとても多いです。
RMANリポジトリである制御ファイルにはバックアップに関する情報が格納されるため、明示的なバックアップを行った場合はリストアが困難になりますが、制御ファイルの自動バックアップ機能を使用した場合は、RMANリポジトリにアクセスせずに制御ファイルの自動バックアップをリストアすることができる仕組みが用意されています。
そこで、本演習ではまず制御ファイルの自動バックアップ機能を設定します。
>> 制御ファイルの自動バックアップ設定 |
|
まず始めに、RMANコマンドを使用し、ターゲットのデータベースに接続します。
|
次に、CONFIGUREコマンドにより、デフォルトのデバイスタイプをNetVaultが使用する'SBT_TAPE'に設定します。
|
そして、やはりCONFIGUREコマンドを使用して、AUTOBACKUPを使用する設定を行います。
|
最後にSHOW ALLにて、設定が正しく行われているか確認します。
|
>>制御ファイル自動バックアップ使用時のOracle APM設定 |
|
自動バックアップを使用している際には、NetVaultからではなくOracle側から自動的にバックアップが呼び出されることがあります。その時に使用するテープ装置等をあらかじめ指定しておくように、事前にOracle APMを設定しておきます。
◆ターゲットセットの作成
はじめに、バックアップウィンドウの中で、使用するテープ装置を決めたら、その状態を名前をつけて保存します。最初に"ターゲット" タブで使用するデバイスの種類や、メディア指定を行い、"名前を付けて保存" ボタンをクリックします。
◆Oracle APMへの設定
バックアップ・ウィンドウから、Oracle APMのアイコンを選択し、右クリックメニューから設定を選択します。
設定項目の中にある、"CLIバックアップ/自動バックアップ用のターゲットセット"に先ほど作成したターゲットセットの名称を入力します。ここでは、"VTL"という定義を登録しました。
>> 制御ファイルの自動バックアップの使用 |
|
事前の設定が終わったら、今度は実際に自動バックアップによるバックアップを行います (以前にご紹介した設定は、自動バックアップを使用しない状態になっています)。
まず、データベースの編集を行い、"RMANの詳細" タブで、制御ファイルの自動バックアップを使用するように設定します。
このようにすることで、バックアップの選択画面で制御ファイルが表示されなくなります。これは、明示的にバックアップを選択することなく、自動的に処理が行われるためです。
この設定で、一度正しいフルバックアップを実行してください。このフルバックアップが実行されたことを確認して、リストア/リカバリ・テストを実施します。
>> 擬似障害の発生 |
|
今回は、すべての表領域、制御ファイルやSPFILEに障害が発生したということを想定していますので、強制的に一度停止してから、直接ファイルを削除してしまいます。なお、ファイル削除をするので、必ずテスト環境で実施するようにしてください。心配な方は削除ではなく、リネームをすると良いでしょう。
まず、強制的にシャットダウンを行います。ファイルを削除してしまうため、整合性等は気にする必要がありません。
|
次に、表領域のデータファイルと制御ファイルを削除します。ここでは、コマンドラインから実行していますが、もちろんエクスプローラから削除してもかまいません。
注意が必要なのは、オンラインREDOログは削除しないようにしてください。もし、削除してしまった場合には、不完全回復が必要になります。
|
アーカイブログの削除は任意ですが、バックアップ以降に生成されたアーカイブログも削除してしまった場合は、完全回復ができなくなります。
|
最後は、SPFILEです。他にもバックアップが必要なファイル等がありますが、本演習ではSPFILEのみしかバックアップ対象にしていませんでしたので、ここでは他のファイルは割愛します。
|
>> リストア&リカバリ |
◆障害の確認
実際にリストア等を行う前に、まず当該システムが本当に障害かどうかを確認します。startupをしても、正常に起動できません。これは、初期化パラメータファイル等すらない状態だからです。
|
◆SPFILEのリストア
SPFILEのリストアはとても簡単です。なぜなら、Oracle APMのパラメータファイルの項目は、RMANの機能ではなくNetVaultを使用してファイルとして取得されているためです。リストア・ウィンドウから、パラメータファイルを選択して簡単に復旧できます。
◆制御ファイルのリストア
最初に、nomount状態で起動しておきます。
|
次に、制御ファイルを自動バックアップからリストアします。この際、DBIDというものを指定する必要があり、本来は事前にメモしておくことが必要だったりするのですが、リストア画面のバックアップ・コンテンツタブを見れば、DBIDを確認できます。
|
事前に確認したDBIDをSETして、自動バックアップを使用して制御ファイルのリストアを行うようにします。TYPEを'SBT_TAPE'にすることで、自動的にNetVaultのメディア管理が使用されます。なお、この作業をNetVault GUIから実施することはできません。
正常にリストアが終了したら、制御ファイルが復旧していることが確認できます。
|
◆全ての表領域のリストアおよびリカバリ
制御ファイルまで復旧したら、今度はデータベースのリストアおよびリカバリを行うのですが、これ以降の作業はすべてNetVaultのGUIから実施することが可能です。
本来は、リストア前にデータベースをmount状態にする必要がありますが、これもコマンドは不要です。リストアオプションとして用意されているため、チェックするだけです。
リストア後は、リカバリ作業を実施する必要がありますが、これもGUI上にオプションとして用意されています。デフォルトは、"リカバリーを実行しない"になっていますが、"完全なリカバリーを実行する"に変更します。
ちなみに、すべてのログが揃っていて完全回復できる場合には、"完全なリカバリーを実行する"でよいのですが、不完全回復しか出来ないときには、"データベース・ポイント・イン・タイム・リカバリーを実行する"を選択します。
リカバリ終了後は、ユーザからアクセスできるようにオープンしますが、RESETLOG付でオープンする場合も、チェックボックスから選択できます。"ポスト・リカバリ" タブで指定するようにしてください。
一連の処理は、すべてNetVaultで実行されます。詳細を見たい場合は、ログ表示の際にフィルタ・オプションを"全て"に設定することで確認できます。
|
自動で、データベースがオープンされ使用可能な状態になっているはずですが、必要に応じて確認をするようにしてください。
|
>> 次回は・・・ |
|
以上、データベースのデータファイルがすべて障害にあった際の復旧手順について確認してきました。次回は、リカバリカタログの使用やより細かい機能についてご説明します。