この章は次の項で構成されています。
この項では、Data Guardの保護モードについて説明します。
ここでの説明では、同期化されたスタンバイ・データベースは、構成されたデータ保護モードの最低要件を満たし、REDOギャップがないデータベースとして作成されています。REDOギャップの詳細は、6.4.3項を参照してください。
最大可用性
この保護モードは、プライマリ・データベースの可用性を低下させない範囲で可能な最高レベルのデータ保護を提供します。トランザクションは、そのトランザクションのリカバリに必要なすべてのREDOデータが、オンラインREDOログおよび少なくとも1つの同期化されたスタンバイ・データベース上のスタンバイREDOログに書き込まれるまでコミットされません。プライマリ・データベースは、REDOストリームを少なくとも1つの同期化されたスタンバイ・データベースに書き込むことができない場合、REDOストリームを同期化されたスタンバイ・データベースに再び書き込めるようになるまで、最大パフォーマンス・モードにあるかのように動作してプライマリ・データベースの可用性を維持します。
このモードでは、プライマリ・データベースに障害が発生した場合、ただし、2回目の障害でプライマリ・データベースから少なくとも1つのスタンバイ・データベースにREDOデータの完全なセットが送信される場合にのみ、データが消失しないことを保証します。
最大パフォーマンス
この保護モードは、プライマリ・データベースのパフォーマンスに影響しない範囲で可能な最高レベルのデータ保護を提供します。これは、トランザクションによって生成されたすべてのREDOデータがオンライン・ログに書き込まれた直後に、そのトランザクションのコミットを可能にすることで実現されます。REDOデータは、1つ以上のスタンバイ・データベースにも書き込まれますが、トランザクション・コミットについて非同期で行われるため、プライマリ・データベースのパフォーマンスは、スタンバイ・データベースへのREDOデータの書込み遅延による影響を受けません。
この保護モードは、最大可用性モードに比べてデータ保護が若干弱く、プライマリ・データベースのパフォーマンスへの影響を最小限に抑えます。
これはデフォルトの保護モードです。
最大保護
この保護モードは、プライマリ・データベースに障害が発生した場合でも、データ消失がないことを保証します。このレベルの保護を提供するには、トランザクションがコミットされる前に、トランザクションのリカバリに必要なREDOデータを、オンラインREDOログおよび少なくとも1つの同期化されたスタンバイ・データベース上のスタンバイREDOログに書き込む必要があります。少なくとも1つの同期化されたスタンバイ・データベースにREDOストリームを書き込むことができない場合は、データ消失が発生しないように、プライマリ・データベースは停止し、トランザクションの処理を続行しません。
Data GuardがREDOデータをスタンバイREDOログ・ファイルの永久記憶域に書き込むとすぐに、プライマリのトランザクションは保護されたものとみなされます。その後すぐにプライマリ・データベースに確認通知を戻し、次のトランザクションに進めるようにします。これによって、プライマリ・データベースでの同期転送スループットやレスポンス時間による影響を最小化できます。スタンバイ・データベースでの完全なData Guardの検証機能を最大限活用するには、必ずリアルタイムの適用モードで操作し、REDOの変更を受信と同時にスタンバイ・データベースに適用します。Data Guardは検出したすべての破損を通知するので、迅速な修正処理を実行できます。
このデータ保護モードは、プライマリ・データベースの可用性よりもデータ保護を優先するため、2つ以上のスタンバイ・データベースを使用して、最大保護モードで稼働するプライマリ・データベースを保護し、1つのスタンバイ・データベースの障害が原因でプライマリ・データベースが停止しないようにします。
注意: 非同期でコミットされたトランザクションは、そのトランザクションで生成されたREDOが、少なくとも1つの同期スタンバイ・データベースのスタンバイREDOログに書き込まれるまで、データ消失に対してData Guardの保護を受けません。非同期コミット機能の詳細は、次のドキュメントを参照してください。
|
次の手順を実行して、プライマリ・データベースのデータ保護モードを設定します。
データ保護モードの詳細は、5.1項を参照してください。
少なくとも1つのスタンバイ・データベースに対応するLOG_ARCHIVE_DEST_
n
データベース初期化パラメータには、表5-1にリストされている、必要なデータ保護モードに対応するREDO転送属性が含まれている必要があります。
また、スタンバイ・データベースにはスタンバイREDOログが必要です。
REDO転送およびスタンバイREODログの構成の詳細は、第6章「REDO転送サービス」を参照してください。
たとえば、LOG_ARCHIVE_CONFIG
パラメータの構成には、次のSQL文が使用されることがあります。
SQL> ALTER SYSTEM SET LOG_ARCHIVE_CONFIG='DG_CONFIG=(CHICAGO,BOSTON)';
次のSQL文はプライマリ・データベースで実行します。
SQL> ALTER DATABASE - > SET STANDBY DATABASE TO MAXIMIZE {AVAILABILITY | PERFORMANCE | PROTECTION};
オープン状態のデータベースでデータ保護モードをMAXIMUM PROTECTIONに設定できるのは、現在のデータ保護モードがMAXIMUM AVAILABILITYで、同期されているスタンバイ・データベースが少なくとも1つある場合のみです。
次の問合せをプライマリ・データベースで実行し、新しい保護モードで動作していることを確認します。
SQL> SELECT PROTECTION_MODE FROM V$DATABASE;