2.3 ADVISE FAILURE
目的
ADVISE FAILURE
コマンドを使用すると、指定した障害の修復オプションを表示できます。このコマンドは、データ・リカバリ・アドバイザが認識している障害のサマリーを出力し、修復済の障害がオープン状態になっている場合は、暗黙的にクローズします。
このコマンドを使用する場合の推奨手順として、RMANセッションで、まずLIST
FAILURE
を実行して障害を表示し、次にADVISE FAILURE
を実行して修復オプションを表示し、REPAIR FAILURE
を実行して障害を修復します。
前提条件
RMANがターゲット・データベースに接続されている必要があります。TARGET
としてデータベースに接続する方法については、CONNECT
およびRMAN
コマンドを参照してください。
ターゲット・データベース・インスタンスが起動されている必要があります。ターゲット・データベースは、単一インスタンス・データベースである必要があります。また、ロジカル・スタンバイ・データベースは指定できますが、フィジカル・スタンバイ・データベースは指定できません。
現行リリースでは、データ・リカバリ・アドバイザは、単一インスタンス・データベースのみをサポートします。Oracle Real Application Clusters(Oracle RAC)データベースはサポートしていません。
使用上の注意
データ・リカバリ・アドバイザは、修復の可能性を検証してから修復方法を提案します。たとえば、データ・リカバリ・アドバイザが、メディア・リカバリに必要なすべてのバックアップとアーカイブREDOログ・ファイルが使用可能かどうかをチェックするとします。ADVISE FAILURE
の出力には、データ・リカバリ・アドバイザが特定の障害に対して最適とみなした修復方法が示されます。ADVISE FAILURE
コマンドでは、手動と自動の両方の修復オプションを生成できます。
手動修復オプション
手動修復オプションは、必須または任意のいずれかになります。任意のアクションの方が、自動修復よりも短時間で簡単に障害を修正できることがあります。たとえば、データ・リカバリ・アドバイザによって、プライマリ・データベースの修復のかわりに、スタンバイ・データベースへのフェイルオーバーが推奨される場合があります。
他にも、自動修復が実現できないため、手動が唯一のオプションになる場合もあります。たとえば、I/O障害は、ほとんどの場合に自動では修復できません。また、オペレーティング・システムやディスク・サブシステムから戻されるデータが不十分なために、障害を診断できない場合もあります。
自動修復オプション
各自動修復オプションは、単一修復または修復ステップ・セットのいずれかです(コマンド出力の説明については、表2-1を参照)。修復オプションに、複数の修復ステップがあるスクリプトが含まれる場合、ADVISE FAILURE
は、修復ステップが正しい順序になるようにスクリプトを生成します。単一修復の場合は、常にCRITICALな障害がまとめて修復されます。CRITICALな障害の修復は必須ですが、CRITICALでない障害を同時に修復することも可能です。CRITICALでない障害は、1つずつ任意の順序で修復することも、まとめて修復することもできます。
Oracle RACおよびデータ・リカバリ・アドバイザ
Oracle RACデータベースのすべてのインスタンスでデータ障害が発生した場合に、単一インスタンス・モードでデータベースをマウントしてデータ・リカバリ・アドバイザを使用すると、制御ファイル、SYSTEM
データファイルおよびディクショナリの障害を検出して修復できます。また、ヘルス・チェックを開始して、他のデータベース・コンポーネントにデータ障害がないかをテストすることもできます。この方法では、データファイルにアクセスできないなど、他のクラスタ・インスタンスのローカルのデータ障害を検出することはできません。
セマンティクス
advise
構文要素 | 説明 |
---|---|
|
自動診断リポジトリに記録されている障害のうち、優先順位が 現行のセッションで 注意: 現行のRMANセッションで、 |
|
オープン状態のすべての障害をまとめて修復するオプションを表示します。 |
|
重大な障害のみを修復するオプションを表示します。 |
|
優先順位が |
|
優先順位が |
|
データベースがマウントされるまで優先順位を決定できない障害のみを修復するオプションを表示します。 |
|
指定された障害のみを修復するオプションを表示します。 |
EXCLUDE FAILURE failureNumber |
指定された障害をリストから除外します。 |
ADVISE FAILUREコマンドの出力
ADVISE FAILURE
の出力には、LIST
FAILURE
の出力も含まれます(説明は、表2-27を参照)。出力例については、例2-5を参照してください。
RMANは、順序が決まっていないリスト形式で必須および任意の手動によるアクションを提示します。手動オプションが存在する場合は、自動オプションの前に表示されます。表2-1に、自動修復オプションの出力を示します。
表2-1 自動修復オプション
列 | 内容 |
---|---|
|
自動修復オプションの識別子。 |
|
データ・リカバリ・アドバイザで提示される自動修復オプションは、可能な場合には必ずデータ消失のないオプションになります。自動修復オプションは、基本的に次のカテゴリに分類されます。
注意: |
|
提案された修復の説明。たとえば、データファイル17のリストアとリカバリが、修復として提案されます。 |
|
すべての修復アクションとコメントが記述された編集可能なスクリプトの場所。自動修復を実行しない場合は、このスクリプトの内容を確認して、手動リカバリで使用するように編集できます。 |
例
例2-5 すべての障害の修復オプションの表示
この例は、データ・リカバリ・アドバイザで認識されているすべての障害の修復オプションを表示します。この例では、2つの障害(データファイルの欠落、および破損ブロックのあるデータファイル)が示されています。
RMAN> LIST FAILURE; List of Database Failures ========================= Failure ID Priority Status Time Detected Summary ---------- -------- --------- ------------- ------- 142 HIGH OPEN 23-APR-13 One or more non-system datafiles are missing 101 HIGH OPEN 23-APR-13 Datafile 1: '/disk1/oradata/prod/system01.dbf' contains one or more corrupt blocks RMAN> ADVISE FAILURE; List of Database Failures ========================= Failure ID Priority Status Time Detected Summary ---------- -------- --------- ------------- ------- 142 HIGH OPEN 23-APR-13 One or more non-system datafiles are missing 101 HIGH OPEN 23-APR-13 Datafile 1: '/disk1/oradata/prod/system01.dbf' contains one or more corrupt blocks analyzing automatic repair options; this may take some time using channel ORA_DISK_1 analyzing automatic repair options complete Mandatory Manual Actions ======================== no manual actions available Optional Manual Actions ======================= 1. If file /disk1/oradata/prod/users01.dbf was unintentionally renamed or moved, restore it Automated Repair Options ======================== Option Repair Description ------ ------------------ 1 Restore and recover datafile 28; Perform block media recovery of block 56416 in file 1 Strategy: The repair includes complete media recovery with no data loss Repair script: /disk1/oracle/log/diag/rdbms/prod/prod/hm/reco_660500184.hm