LOG_ARCHIVE_DEST_n初期化パラメータ(nは1から31の整数です)には次の属性があります。
ALTERNATE(LOG_ARCHIVE_DEST_11からLOG_ARCHIVE_DEST_31ではサポートされない)
LOCATIONおよびSERVICE(LOCATIONはLOG_ARCHIVE_DEST_11からLOG_ARCHIVE_DEST_31ではサポートされない)
MANDATORY(LOG_ARCHIVE_DEST_11からLOG_ARCHIVE_DEST_31ではサポートされない)
SYNCおよびASYNC(SYNCはLOG_ARCHIVE_DEST_11からLOG_ARCHIVE_DEST_31ではサポートされない)
使用方法
Oracle Data Guard構成の各データベースは、通常、オンラインおよびスタンバイREDOログのアーカイブ用のLOCATION属性を持つ宛先を1つと、構成にあるその他のデータベース用のREMOTE属性を持つ宛先を1つ持ちます。
構成されている場合、LOG_ARCHIVE_DEST_1からLOG_ARCHIVE_DEST_10の各宛先には、ローカル・ディスクのディレクトリまたはリモートからアクセスするデータベースを指定する、LOCATIONまたはSERVICE属性が含まれている必要があります。LOG_ARCHIVE_DEST_11からLOG_ARCHIVE_DEST_31の各宛先にはSERVICE属性が含まれている必要があります。
他の属性はすべてオプションです。
LOG_ARCHIVE_DEST_11からLOG_ARCHIVE_DEST_31を、ALTERNATE REDO転送先として指定することはできません。
LOG_ARCHIVE_DEST_11からLOG_ARCHIVE_DEST_31は、COMPATIBLE初期化パラメータが11.2.0.0以上に設定されている場合のみ使用できます。
注意:
LOG_ARCHIVE_DEST_n初期化パラメータの複数の属性が非推奨になりました。これらの属性は下位互換用にサポートされており、『Oracle Databaseリファレンス』で説明しています。
関連項目:
LOG_ARCHIVE_DEST_n宛先を定義してREDO転送サービスを設定する方法の詳細は、「REDO転送サービス」を参照してください。
AFFIRMおよびNOAFFIRM属性は、REDO転送先が、受信済REDOデータをスタンバイREDOログに書き込む前または書き込んだ後に、受信済REDOデータを確認するかどうかを制御します。
AFFIRM: REDO転送先で受信したREDOデータをスタンバイREDOログに書き込んだ後に確認するように指定します。
NOAFFIRM: REDO転送先で受信したREDOデータをスタンバイREDOログに書き込む前に確認するように指定します。
| カテゴリ | AFFIRM | NOAFFIRM |
|---|---|---|
データ型 |
キーワード |
キーワード |
有効な値 |
該当なし |
該当なし |
デフォルト値 |
該当なし |
該当なし |
必須属性 |
|
|
属性との競合 |
|
|
対応先 |
|
|
使用方法
AFFIRM属性およびNOAFFIRM属性が指定されていない場合、デフォルトは、SYNC属性が指定されているときはAFFIRM、ASYNC属性が指定されているときはNOAFFIRMです。
SYNC属性を使用しないAFFIRM属性の指定は非推奨であり、今後のリリースではサポートされません。
関連項目:
例
次の例は、リモート宛先のAFFIRM属性を示しています。
LOG_ARCHIVE_DEST_3='SERVICE=stby1 SYNC AFFIRM' LOG_ARCHIVE_DEST_STATE_3=ENABLE
元のアーカイブ先で障害が発生したときに使用する代替アーカイブ先を指定します。
| カテゴリ | ALTERNATE=LOG_ARCHIVE_DEST_n |
|---|---|
データ型 |
文字列 |
有効な値 |
|
デフォルト値 |
なし。代替宛先が指定されていない場合、REDO転送サービスでは自動的に別のアーカイブ先に変更されません。 |
必須属性 |
なし脚注1 |
属性との競合 |
なし脚注 2 |
対応先 |
|
脚注1
MAX_FAILUREがALTERNATEで使用されることは必須ではありませんが、代替宛先がアクティブになるには、ゼロ以外のMAX_FAILURE値が必要です。ALTERNATEをMAX_FAILUREのデフォルト値(ゼロ)とともに使用すると、動作は変わりません。
脚注2
REOPEN属性にゼロ以外の値を指定すると、試行間の最小時間がREOPENの値(秒)と等しくなり、エラーの回数がMAX_FAILUREの値と等しいか超えるまで代替宛先はアクティブになりません。
使用方法
ALTERNATE属性はオプションです。代替宛先が指定されていない場合、元のアーカイブ先に障害が発生しても、REDO転送サービスでは自動的に別のアーカイブ先に変更されません。
LOG_ARCHIVE_DEST_nのパラメータごとに指定できる代替宛先は、1つだけです。
代替宛先に次のいずれかを指定することが理想的です。
代替宛先を構成するには、LOG_ARCHIVE_DEST_STATE_nパラメータをALTERNATEに設定します。
代替宛先を有効にするには、LOG_ARCHIVE_DEST_STATE_nパラメータをENABLEに設定します。
有効化された宛先が代替宛先を参照していない場合は、代替宛先を自動的に有効化する方法はないので、代替宛先は保留になることを意味しています。ただし、ALTER SYSTEMを使用して実行時に代替宛先を有効化することができます。
代替宛先に指定できる宛先には、次の制限事項があります。
ローカル宛先を少なくとも1つは有効にする。
有効な宛先数は、LOG_ARCHIVE_MIN_SUCCEED_DESTパラメータでの定義と一致させる必要がある。
宛先をそれ自身の代替先にすることはできない。
宛先に障害がある場合、次のアーカイブ操作で代替宛先が有効化されます。アーカイブ操作中に代替宛先を有効化するには処理済のブロックを再度読み取る必要があるので、これはサポートされていません。これはREOPEN属性の動作と同一です。
代替宛先が指定されていない場合、またはMAX_FAILUREがゼロ(デフォルト)に設定されている場合、元の宛先に障害が発生しても、REDO転送サービスでは自動的に別の宛先に変更されません。
例
この項の例は、基本的な概念を示しており、示しているように使用することを意図しているわけではありません。構成に応じて、DB_UNIQUE_NAMEなどの他の必須パラメータが存在する場合もあります。
例17-1に、サンプル初期化パラメータ・ファイルを示します。このサンプル・ファイルでは、書込み失敗や割当て失敗などのエラーが発生したり、デバイスがいっぱいになった場合、次回のアーカイブ操作で、ローカル・アーカイブ先LOG_ARCHIVE_DEST_1は代替宛先LOG_ARCHIVE_DEST_2に自動的にフェイルオーバーします。
例17-1 代替ローカル宛先への自動フェイルオーバー
LOG_ARCHIVE_DEST_1='LOCATION=/disk1 MANDATORY MAX_FAILURE=1 ALTERNATE=LOG_ARCHIVE_DEST_2' LOG_ARCHIVE_DEST_STATE_1=ENABLE LOG_ARCHIVE_DEST_STATE_2=ALTERNATE LOG_ARCHIVE_DEST_2='LOCATION=/disk2 MANDATORY'
元の宛先LOG_ARCHIVE_DEST_1へのアーカイブを再開するには、手動で再度有効にする必要があります。次に、LOG_ARCHIVE_DEST_2を前の代替状態にリセットしてアクティブなローカル・アーカイブ先が2つにならないようにする必要があります。そのためには、次のようにしてLOG_ARCHIVE_DEST_STATE_nパラメータを元の値に設定します。
ALTER SYSTEM SET LOG_ARCHIVE_DEST_STATE_1=ENABLE ALTER SYSTEM SET LOG_ARCHIVE_DEST_STATE_2=ALTERNATE
このフォールバック・メカニズムは自動化できます。例17-2のサンプル初期化パラメータ・ファイルで示すように、優先宛先を指すALTERNATE属性を指定して、元の宛先と代替宛先のペアを作成します。
例17-2 自動ローカル代替フォールバック
LOG_ARCHIVE_DEST_1='LOCATION=/disk1 MANDATORY MAX_FAILURE=1 ALTERNATE=LOG_ARCHIVE_DEST_2' LOG_ARCHIVE_DEST_STATE_1=ENABLE LOG_ARCHIVE_DEST_STATE_2=ALTERNATE LOG_ARCHIVE_DEST_2='LOCATION=/disk2 MANDATORY ALTERNATE=LOG_ARCHIVE_DEST_1'
LOG_ARCHIVE_DEST_1が再度使用できるようになると、Oracle Data Guardはアクティブなローカル・アーカイブ宛先になるように自動的に設定し、LOG_ARCHIVE_DEST_2をその代替としてリセットします。
1つのスタンバイ・データベースに対して複数のネットワーク・ルートがある場合は、ALTERNATEを使用して、プライマリ・ネットワーク・リンクを失ったスタンバイ・データベースにREDOを動的に送信し続けるようにOracle Data Guardを再構成できます。
例17-3 同じスタンバイ・データベースに対する代替Oracle Netサービス名の定義
この例で、2つの異なるパスを使用して同じスタンバイ・データベースに代替Oracle Netサービス名を定義する方法を示します。
LOG_ARCHIVE_DEST_2='SERVICE=stby1_path1 MAX_FAILURE=1 ALTERNATE=LOG_ARCHIVE_DEST_3 DB_UNIQUE_NAME=stdby1' LOG_ARCHIVE_DEST_STATE_2=ENABLE LOG_ARCHIVE_DEST_STATE_3=ALTERNATE LOG_ARCHIVE_DEST_3='SERVICE=stby1_path2 DB_UNIQUE_NAME=stdby1'
1つのリンクが停止すると自動的にフェイルオーバーする冗長なネットワーク・リンクでは、このような代替宛先を構成する必要はありません。
この形式の代替は、ログ・スイッチでのみ発生するため、これが最後の同期スタンバイ宛先である場合、プライマリは最大保護モードで稼働し続けることができません。保護モードの詳細は、「Oracle Data Guardの保護モード」を参照してください。
例17-4 代替リモート宛先への自動フェイルオーバー
ローカル・アーカイブ先と同じように、遠隔同期構成またはカスケード構成では、1つ目の宛先が使用できなくなった場合、自動的にフェイルオーバーしてターミナル・スタンバイに直接REDOを送信するようにREDO転送を設定できます。サンプル初期化パラメータ・ファイルは、次のようになります。
遠隔同期
LOG_ARCHIVE_DEST_2='SERVICE=far_sync MAX_FAILURE=1 SYNC AFFIRM ALTERNATE=LOG_ARCHIVE_DEST_3 DB_UNIQUE_NAME=far_sync' LOG_ARCHIVE_DEST_STATE_2=ENABLE LOG_ARCHIVE_DEST_STATE_3=ALTERNATE LOG_ARCHIVE_DEST_3='SERVICE=terminal_standby ASYNC NOAFFIRM DB_UNIQUE_NAME=terminal_standby'
カスケード・スタンバイ
LOG_ARCHIVE_DEST_2='SERVICE=stdby1 MAX_FAILURE=1 ALTERNATE=LOG_ARCHIVE_DEST_3 DB_UNIQUE_NAME=stdby1' LOG_ARCHIVE_DEST_STATE_2=ENABLE LOG_ARCHIVE_DEST_STATE_3=ALTERNATE LOG_ARCHIVE_DEST_3='SERVICE=terminal_standby DB_UNIQUE_NAME=terminal_standby'
これらの例は、遠隔同期インスタンスfar_syncがterminal_standbyにREDOを転送している場合、またはカスケード・スタンバイstdby1がterminal_standbyにREDOをカスケードしている場合の設定を示しています。
ローカル代替宛先と同様に、元のリモート宛先LOG_ARCHIVE_DEST_2へのREDOの送信を再開するには、LOG_ARCHIVE_DEST_2を手動で再度有効にした後、LOG_ARCHIVE_DEST_3を前の代替状態にリセットする必要があります。そのためには、次のようにしてLOG_ARCHIVE_DEST_STATE_nパラメータを元の値に設定します。
ALTER SYSTEM SET LOG_ARCHIVE_DEST_STATE_2=ENABLE ALTER SYSTEM SET LOG_ARCHIVE_DEST_STATE_3=ALTERNATE
例17-5 自動リモート代替フォールバック
ローカル・アーカイブ代替と同じ方法で、優先宛先とその代替のペアを作成し、元の宛先への自動フォールバックを有効にできます。
遠隔同期
LOG_ARCHIVE_DEST_2='SERVICE=far_sync MAX_FAILURE=1 SYNC AFFIRM ALTERNATE=LOG_ARCHIVE_DEST_3 DB_UNIQUE_NAME=far_sync' LOG_ARCHIVE_DEST_STATE_2=ENABLE LOG_ARCHIVE_DEST_STATE_3=ALTERNATE LOG_ARCHIVE_DEST_3='SERVICE=terminal_standby ASYNC NOAFFIRM ALTERNATE=LOG_ARCHIVE_DEST_2 DB_UNIQUE_NAME=terminal_standby'
カスケード・スタンバイ
LOG_ARCHIVE_DEST_2='SERVICE=stdby1 MAX_FAILURE=1 ALTERNATE=LOG_ARCHIVE_DEST_3 DB_UNIQUE_NAME=stdby1' LOG_ARCHIVE_DEST_STATE_2=ENABLE LOG_ARCHIVE_DEST_STATE_3=ALTERNATE LOG_ARCHIVE_DEST_3='SERVICE=terminal_standby ALTERNATE=LOG_ARCHIVE_DEST_2 DB_UNIQUE_NAME=terminal_standby'
リモート宛先の場合、フォールバックが発生するのは、適切な保護レベルを維持しながら、元の宛先(これらの例ではLOG_ARCHIVE_DEST_2)が再同期され、元のロールを引き受ける準備ができたとOracle Data Guardが判断した場合のみです。つまり、しばらくの間、Oracle Data Guardは両方の宛先にREDOを送信します。
遠隔同期構成では、フェイルオーバーの場合に現行のREDOを失わずにターミナル・スタンバイがプライマリ・データベースになることが可能であることを保証するのに十分な現行のREDOが遠隔同期インスタンスにあるとき、再同期は完了したとみなされます。
カスケード・スタンバイ構成では、カスケード・スタンバイ・データベースがすべてのギャップを解決し、すべてのプライマリ・インスタンスから現行のREDOストリームを受け取っているとき、再同期は完了したとみなされます。
例17-6 高可用性の2つの遠隔同期
この例では、プライマリは2つの遠隔同期インスタンスの一方にREDOを同期的に送信し、その遠隔同期インスタンスが1つ以上のターミナル・スタンバイにREDOを転送しています。1つ目の遠隔同期インスタンスで障害が発生すると、プライマリは自動的に2つ目の遠隔同期インスタンスに切り替え、今度はその遠隔同期インスタンスが同じ一連のターミナル・スタンバイに転送します。
LOG_ARCHIVE_DEST_2='SERVICE=far_sync1 MAX_FAILURE=1 SYNC AFFIRM ALTERNATE=LOG_ARCHIVE_DEST_3 DB_UNIQUE_NAME=far_sync1' LOG_ARCHIVE_DEST_STATE_2=ENABLE LOG_ARCHIVE_DEST_STATE_3=ALTERNATE LOG_ARCHIVE_DEST_3='SERVICE=far_sync2 SYNC AFFIRM ALTERNATE=LOG_ARCHIVE_DEST_2 DB_UNIQUE_NAME=far_sync2'
COMPRESSION属性は、REDOデータをREDO転送先に転送する前に圧縮するかどうかを指定するために使用します。
注意:
REDO転送の圧縮は、Oracle Advanced Compressionオプションの機能です。REDO転送の圧縮機能を使用する前に、このオプションのライセンスを購入する必要があります。
| カテゴリ | COMPRESSION=ENABLEまたはDISABLE |
|---|---|
データ型 |
ブール |
有効な値 |
|
デフォルト値 |
|
必須属性 |
なし |
属性との競合 |
なし |
対応先 |
|
使用方法
COMPRESSION属性はオプションです。指定されていない場合、デフォルトの圧縮動作はDISABLEです。
Oracle Data GuardのCOMPRESSION属性も使用するSYNC接続文字列の場合、sqlnet.oraファイルでSQLNET.COMPRESSION構成パラメータを無効にする(オフにする)必要があります。SQLNET.COMPRESSIONパラメータの詳細は、『Oracle Database Net Servicesリファレンス』を参照してください。
例
次の例は、COMPRESSION属性が指定されているLOG_ARCHIVE_DEST_nパラメータを示しています。
LOG_ARCHIVE_DEST_3='SERVICE=denver SYNC COMPRESSION=ENABLE' LOG_ARCHIVE_DEST_STATE_3=ENABLE
DB_UNIQUE_NAME属性は、この宛先にあるデータベースの一意の名前を指定します。
| カテゴリ | DB_UNIQUE_NAME=name |
|---|---|
データ型 |
文字列 |
有効な値 |
nameは、 |
デフォルト値 |
なし |
必須属性 |
なし |
属性との競合 |
なし |
対応先 |
|
使用方法
この属性は、次の場合にはオプションです。
LOG_ARCHIVE_CONFIG=DG_CONFIG初期化パラメータが指定されていない場合。
これがローカル宛先(LOCATION属性で指定)の場合。
この属性が必須となるのは、LOG_ARCHIVE_CONFIG=DG_CONFIG初期化パラメータが指定されており、かつ、これがリモート宛先(SERVICE属性で指定)の場合です。
プライマリ・データベースとスタンバイ・データベースの関係を明確に識別するには、DB_UNIQUE_NAME属性を使用します。この属性は、Oracle Data Guard構成に複数のスタンバイ・データベースが存在する場合に特に有用です。
DB_UNIQUE_NAMEで指定する名前は、DG_CONFIGリストのDB_UNIQUE_NAME値の1つと一致している必要があります。REDO転送サービスにより、指定された宛先のデータベースのDB_UNIQUE_NAME属性がDB_UNIQUE_NAME属性と一致していること、またはその宛先への接続が拒否されていることが検証されます。
DB_UNIQUE_NAME属性で指定する名前は、宛先で識別されるデータベースのDB_UNIQUE_NAME初期化パラメータで指定されている名前と一致している必要があります。
例
次の例では、DB_UNIQUE_NAMEパラメータではboston (DB_UNIQUE_NAME=boston)が指定されており、これはLOG_ARCHIVE_DEST_1パラメータのDB_UNIQUE_NAME属性にも指定されています。LOG_ARCHIVE_DEST_2パラメータのDB_UNIQUE_NAME属性は、宛先としてchicagoを指定しています。bostonとchicagoは、どちらもLOG_ARCHIVE_CONFIG=DG_CONFIGパラメータにリストされています。
DB_UNIQUE_NAME=boston LOG_ARCHIVE_CONFIG='DG_CONFIG=(chicago,boston,denver)' LOG_ARCHIVE_DEST_1='LOCATION=/arch1/ VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=boston' LOG_ARCHIVE_DEST_2='SERVICE=Sales_DR VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=chicago'
DELAY属性は、スタンバイ・サイトでプライマリ・サイトからのREDOデータがアーカイブされてから、スタンバイ・データベースまたはそこからカスケードされたスタンバイにアーカイブREDOログ・ファイルが適用されるまでの最小タイム・ラグを指定します。
| カテゴリ | DELAY[=minutes] |
|---|---|
データ型 |
数値 |
有効な値 |
0分以上 |
デフォルト値 |
30分 |
必須属性 |
|
属性との競合 |
|
対応先 |
|
使用方法
DELAY属性はオプションです。デフォルトでは、遅延は発生しません。
DELAY属性は、スタンバイ宛先のアーカイブREDOログ・ファイルが、指定した時間が経過するまでリカバリに利用されないことを示します。時間間隔は分で表され、転送されたREDOデータがスタンバイ・サイトに正常に到達した時点から計測されます。
DELAY属性を使用すると、破損したプライマリ・データまたは誤ったプライマリ・データからスタンバイ・データベースを保護できます。ただし、フェイルオーバー中は、破損が発生した時点までのすべてのREDOを適用するための所要時間が長くなるため、トレードオフを伴います。
DELAY属性は、REDOデータのスタンバイ宛先への転送に影響しません。
リアルタイム適用が使用可能になっている場合、設定した遅延は無視されます。
DELAY属性の変更は、次にREDOデータをアーカイブすると(ログ・スイッチ後に)有効になります。進行中のアーカイブ操作には、影響しません。
指定した遅延間隔は、スタンバイ・サイトで次のように上書きできます。
フィジカル・スタンバイ・データベース用
SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE NODELAY;
ロジカル・スタンバイ・データベース用
SQL> ALTER DATABASE START LOGICAL STANDBY APPLY NODELAY;
カスケードされたスタンバイが使用するDELAY値は、カスケードしているスタンバイにREDOを送信したプライマリのLOG_ARCHIVE_DEST_nパラメータに設定された値です。
関連項目:
これらのALTER DATABASE文の詳細は、『Oracle Database SQL言語リファレンス』を参照してください。
例
DELAY属性を使用すれば、プライマリ・データベースと様々なレベルで同期させる複数のスタンバイ・データベースを維持する構成を設定できます。ただし、REDO Applyで破損時点までのすべてのREDOを適用するまでにかかる時間が長くなるため、フェイルオーバー中は、この保護はなんらかのオーバーヘッドを伴います。
たとえば、プライマリ・データベースAにスタンバイ・データベースBおよびCがあると仮定します。スタンバイ・データベースBは障害時リカバリ・データベースとして設定されているため、タイム・ラグはありません。スタンバイ・データベースCには2時間の遅延が設定されています。2時間あれば、スタンバイ・データベースに伝播する前に、ユーザー・エラーを検出できます。
次の例は、この構成用にDELAY属性を指定する方法を示しています。
LOG_ARCHIVE_DEST_1='LOCATION=/arch/dest MANDATORY' LOG_ARCHIVE_DEST_STATE_1=ENABLE LOG_ARCHIVE_DEST_2='SERVICE=stbyB SYNC AFFIRM' LOG_ARCHIVE_DEST_STATE_2=ENABLE LOG_ARCHIVE_DEST_3='SERVICE=stbyC DELAY=120' LOG_ARCHIVE_DEST_STATE_3=ENABLE
注意:
または、十分なフラッシュバック・ログ・データがあれば、フラッシュバック・データベースを使用して、データベースを障害発生時点または他のデータベース・インカネーションのSCNまで戻すこともできます。フラッシュバック・データベースの使用については、『Oracle Databaseバックアップおよびリカバリ・ユーザーズ・ガイド』で説明しています。
ENCRYPTION属性は、Zero Data Loss Recovery Appliance (リカバリ・アプライアンス)に転送する前にREDOデータを暗号化するかどうかを指定するために使用されます。
注意:
REDO転送の暗号化はリカバリ・アプライアンスへの接続でのみ許可されます。リカバリ・アプライアンス以外のLADで暗号化を構成しようとするとエラーになります。
| カテゴリ | ENCRYPTION=ENABLEまたはDISABLE |
|---|---|
データ型 |
ブール |
有効な値 |
|
デフォルト値 |
|
必須属性 |
|
属性との競合 |
|
対応先 |
|
使用方法
ENCRYPTION属性はオプションです。指定しない場合、デフォルトの暗号化動作はDISABLEです。
ENCRYPTION属性を使用するには、保護されたデータベースでCOMPATIBLE初期化パラメータを11.2.0.4以上に設定する必要があります。
関連項目:
『Zero Data Loss Recovery Appliance管理者ガイド』
例
次の例に、LOG_ARCHIVE_DEST_nパラメータに指定したENCRYPTION属性を示します。
LOG_ARCHIVE_DEST_3='SERVICE=denver ENCRYPTION=ENABLE' LOG_ARCHIVE_DEST_STATE_3=ENABLE
各宛先にはLOCATION属性またはSERVICE属性を指定して、REDO転送サービスがローカル・ディスクのディレクトリまたはリモート・データベースの宛先のどちらにREDOデータを転送できるかを明示する必要があります。
LOG_ARCHIVE_DEST_1からLOG_ARCHIVE_DEST_10の宛先は、LOCATION属性またはSERVICE属性を含むことができます。
LOG_ARCHIVE_DEST_11からLOG_ARCHIVE_DEST_31の宛先は、SERVICE属性しか含むことができません。
| カテゴリ | LOCATION=local_disk_directoryまたはUSE_DB_RECOVERY_FILE_DEST | SERVICE=net_service_name |
|---|---|---|
データ型 |
文字列値 |
文字列値 |
有効な値 |
該当なし |
該当なし |
デフォルト値 |
なし |
なし |
必須属性 |
該当なし |
該当なし |
属性との競合 |
|
|
対応先 |
|
|
使用方法
LOCATIONまたはSERVICE属性を指定する必要があります。デフォルトはありません。
LOG_ARCHIVE_DEST_11からLOG_ARCHIVE_DEST_31パラメータでは、LOCATION属性はサポートされません。
複数の属性を指定している場合は、属性のリストの最初にLOCATION属性またはSERVICE属性を指定します。
LOCATION属性で少なくとも1つのローカル・ディスクのディレクトリを指定する必要があります。これにより、データベースのメディア・リカバリが必要になる場合、ローカルのアーカイブREDOログ・ファイルに確実にアクセスできるようになります。ローカルまたはリモートの追加宛先は最大30個まで指定できます。
LOCATION属性には、次のいずれかを指定できます。
LOCATION= local_disk_directory
これは、データベースを置くシステム上のディスク・ディレクトリの一意のディレクトリ・パス名を指定します。これは、アーカイブREDOログ・ファイルのローカル宛先です。
LOCATION=USE_DB_RECOVERY_FILE_DEST
高速リカバリ領域を構成するには、DB_RECOVERY_FILE_DEST初期化パラメータを使用して、高速リカバリ領域として機能するディレクトリまたはOracle Storage Managerのディスク・グループを指定します。
SERVICE属性を指定する場合は、次のようにします。
SERVICE属性と、REDOデータの送信先となるリモートOracleデータベース・インスタンスを識別する有効なOracle Netサービス名(SERVICE=net_service_name)を指定して、リモート宛先を識別します。
SERVICE属性で指定するOracle Netサービス名は、リモート・データベースへの接続に必要な情報を含む接続記述子に変換されます。
関連項目:
Oracle Netサービス名の設定の詳細は、『Oracle Database Net Services管理者ガイド』を参照してください。
リモート宛先にREDOデータを転送するには、着信するアーカイブREDOデータを受け取るために、ネットワーク接続と、リモート宛先に対応付けられたOracleデータベース・インスタンスが必要です。
LOCATIONおよびSERVICE属性の現行の設定を確認するには、V$ARCHIVE_DEST固定ビューを問い合せます。
TARGET列は、宛先がプライマリ・データベースにとってローカルかリモートかを示します。
DESTINATION列は、宛先に指定されている値を示します。たとえば、宛先パラメータ値は、アーカイブREDOログ・ファイルが配置されているリモートのOracleインスタンスを示すOracle Netサービス名を指定します。
例
次の例は、LOCATION属性の指定方法を示しています。
LOG_ARCHIVE_DEST_2='LOCATION=/disk1/oracle/oradata/payroll/arch/' LOG_ARCHIVE_DEST_STATE_2=ENABLE
次の例は、SERVICE属性の指定方法を示しています。
LOG_ARCHIVE_DEST_3='SERVICE=stby1' LOG_ARCHIVE_DEST_STATE_3=ENABLE
MANDATORY属性は、書き込まれたオンライン・ログ・ファイルが再使用できるためには、その前に宛先に正常にアーカイブされる必要があることを指定します。
| カテゴリ | MANDATORY |
|---|---|
データ型 |
キーワード |
有効な値 |
該当なし |
デフォルト値 |
該当なし |
必須属性 |
該当なし |
属性との競合 |
オプション |
対応先 |
|
使用方法
LOG_ARCHIVE_DEST_11からLOG_ARCHIVE_DEST_31パラメータでは、MANDATORY属性はサポートされません。
MANDATORYが指定されていない場合、デフォルトでは、宛先はオプションとみなされます。
すべての宛先がオプションである場合にも、最低1つの宛先は成功する必要があります。オプションの宛先へのアーカイブが失敗した場合、オンラインREDOログ・ファイルは再利用可能なままで、最終的に上書きされる可能性があります。しかし、必須の宛先へのアーカイブ操作が失敗した場合、オンラインREDOログ・ファイルは上書きされません。
LOG_ARCHIVE_MIN_SUCCEED_DEST=nパラメータ(nは1から10の整数)は、オンラインREDOログ・ファイルを上書きできるようになる前に、正常にアーカイブしておく必要がある宛先の数を指定します。
LOG_ARCHIVE_MIN_SUCCEED_DEST=nの件数は、すべてのMANDATORYの宛先とオプションのローカル宛先によって満たされます。LOG_ARCHIVE_MIN_SUCCEED_DESTパラメータに設定した値が一致すると、オンラインREDOログ・ファイルは再利用可能になります。たとえば、次のようにパラメータを設定できます。
# Database must archive to at least two locations before # overwriting the online redo log files. LOG_ARCHIVE_MIN_SUCCEED_DEST = 2
1つ以上のローカル宛先が必要であり、それらにMANDATORYを宣言するか、またはオプションのままにしておくことができます。
LOG_ARCHIVE_MIN_SUCCEED_DESTパラメータの最小値は1のため、最低1つのローカル宛先が操作上必須です。
必須の宛先のいずれかに障害が発生すると、LOG_ARCHIVE_MIN_SUCCEED_DESTパラメータは不適切になります。
LOG_ARCHIVE_MIN_SUCCEED_DESTパラメータ値を、必須の宛先数にオプションのローカル宛先数を加えた数よりも大きく設定することはできません。
V$ARCHIVE_DEST固定ビューのBINDING列は、アーカイブ操作に障害がどのように影響するのかを指定します。
例
次の例は、MANDATORY属性を示しています。
LOG_ARCHIVE_DEST_1='LOCATION=/arch/dest MANDATORY' LOG_ARCHIVE_DEST_STATE_1=ENABLE LOG_ARCHIVE_DEST_3='SERVICE=denver MANDATORY' LOG_ARCHIVE_DEST_STATE_3=ENABLE
MAX_CONNECTIONS属性は、アーカイブREDOログ・ファイルをREDO転送先に送信する際に、複数のネットワーク接続を使用できるようにします。複数のネットワーク接続を使用すると、待機時間が長いネットワーク・リンクを介したREDO転送のパフォーマンスを向上させることができます。
| カテゴリ | 説明 |
|---|---|
データ型 |
整数 |
有効な値 |
1から20 |
デフォルト値 |
1 |
必須属性 |
なし |
属性との競合 |
なし |
対応先 |
プライマリ・データベースの |
使用方法
MAX_CONNECTIONS属性はオプションです。指定した場合は、REDO転送サービスでARCnプロセスをアーカイブに使用する場合にのみ使用されます。
MAX_CONNECTIONSを1(デフォルト)に設定すると、REDO転送サービスでは、1つのARCnプロセスを使用してリモート宛先にREDOデータを転送します。
MAX_CONNECTIONSを1より大きな値に設定すると、REDO転送サービスでは、複数のARCnプロセスを使用してリモート宛先のアーカイブREDOログ・ファイルにパラレルでREDOを転送します。各アーカイバ(ARCn)プロセスでは、個別のネットワーク接続を使用します。
複数のARCnプロセスを使用すると、REDO転送はパラレルで行われるため、REDOがリモート宛先に転送される速度は向上します。
ARCnプロセスから受信するREDOは、アーカイブREDOログ・ファイルに直接書き込まれます。したがって、受信時にリアルタイムで適用できません。
常に使用されているアーカイバ・プロセスの実際の数は、アーカイバのワークロードおよびLOG_ARCHIVE_MAX_PROCESSES初期化パラメータの値によって異なります。たとえば、すべての宛先のMAX_CONNECTIONS属性の合計がLOG_ARCHIVE_MAX_PROCESSESの値を超えている場合、Oracle Data Guardではできるだけ多数のARCnプロセスが使用されますが、その数はMAX_CONNECTIONS属性に指定されている値より少ない場合があります。
複数のARCnプロセスをOracle RAC環境で使用する場合は、REDOデータをシングル・スタンバイ・データベース・インスタンスに転送するように、プライマリ・インスタンスを構成します。このようにREDO転送を構成しておかなかった場合、アーカイブ操作がリモート・アーカイブへのデフォルト動作に戻り、シングルARCnプロセスを使用してREDOデータを転送します。
例
次の例は、MAX_CONNECTIONS属性を示しています。
LOG_ARCHIVE_DEST_1='LOCATION=/arch/dest' LOG_ARCHIVE_DEST_STATE_1=ENABLE LOG_ARCHIVE_DEST_3='SERVICE=denver MAX_CONNECTIONS=3' LOG_ARCHIVE_DEST_STATE_3=ENABLE
プライマリ・データベースが失敗した宛先を放棄する前に、REDO転送サービスが通信を再確立してその宛先へのREDOデータを転送する連続試行回数を制御します。
| カテゴリ | MAX_FAILURE=count |
|---|---|
データ型 |
数値 |
有効な値 |
>=0 |
デフォルト値 |
0 (ゼロ) |
必須属性 |
|
属性との競合 |
なし |
対応先 |
|
使用方法
MAX_FAILURE属性はオプションです。デフォルトでは、失敗した宛先に対するアーカイブの試行回数に制限はありません。
この属性は、失敗後に回数制限付きでREDOデータの転送を再試行するように、宛先に対する障害の解決方法を指定するときに役立ちます。
MAX_FAILURE属性を指定した場合は、REOPEN属性も設定する必要があります。指定した連続試行回数を超過すると、その宛先はREOPEN属性が指定されていないものとして処理されます。
V$ARCHIVE_DEST固定ビューのFAILURE_COUNT列で障害件数を確認できます。関連するREOPEN_SECS列は、REOPEN属性値を示します。
注意:
宛先の障害件数が、指定したMAX_FAILURE属性の値に達した場合、その宛先を再利用するには、MAX_FAILURE属性値または他の属性を修正する必要があります。この結果、障害件数がゼロ(0)にリセットされます。
ALTER SYSTEM SET文によって宛先が変更されると、障害件数は0(ゼロ)にリセットされます。このため、現在の障害件数の値よりも小さな値にMAX_FAILURE属性を設定する問題が回避されます。
障害件数がMAX_FAILURE属性に設定された値以上になると、REOPEN属性値は暗黙的に0(ゼロ)に設定されます。これによって、REDO転送サービスは、次のアーカイブ操作ではREDOデータを代替宛先(ALTERNATE属性で指定)に転送するようになります。
MAX_FAILURE属性を指定せずに(またはMAX_FAILURE=0を指定し)、REOPEN属性に0(ゼロ)ではない値を指定すると、REDO転送サービスは、失敗した宛先に対して無制限にアーカイブを試行します。宛先がMANDATORY属性を持つ場合、オンラインREDOログ・ファイルはこの宛先にアーカイブされるまで再利用できません。
例
次の例は、REDO転送サービスが、宛先arc_destに対して、アーカイブ操作を連続最高3回、5秒ごとに試行できる指定を示しています。3回目の試行後、アーカイブ操作に失敗すると、その宛先はREOPEN属性が指定されていないものとして扱われます。
LOG_ARCHIVE_DEST_1='LOCATION=/arc_dest REOPEN=5 MAX_FAILURE=3' LOG_ARCHIVE_DEST_STATE_1=ENABLE
LGWRバックグラウンド・プロセスが、REDO転送先に送信されたREDOデータの確認待ちをブロックする時間を秒数で指定します。確認がNET_TIMEOUTの秒数内に受信されない場合は、エラーがログに記録され、その宛先へのREDO転送セッションは終了します。
| カテゴリ | NET_TIMEOUT=seconds |
|---|---|
データ型 |
数値 |
有効な値 |
1脚注 3から1200 |
デフォルト値 |
30秒 |
必須属性 |
|
属性との競合 |
|
対応先 |
プライマリ・データベースの |
脚注3
最小値は1秒に設定できますが、一時的なネットワーク・エラーによるスタンバイ・データベースからの切断を回避するために、最小値は8から10秒に設定することをお薦めします。
使用方法
例
次の例は、NET_TIMEOUT属性を使用して、プライマリ・データベースのネットワーク・タイムアウト値を10秒に指定する方法を示しています。
LOG_ARCHIVE_DEST_2='SERVICE=stby1 SYNC NET_TIMEOUT=10' LOG_ARCHIVE_DEST_STATE_2=ENABLE
NOREGISTER属性は、アーカイブREDOログ・ファイルの場所が対応する宛先に記録されないことを示します。
| カテゴリ | NOREGISTER |
|---|---|
データ型 |
キーワード |
有効な値 |
該当なし |
デフォルト値 |
該当なし |
必須属性 |
|
属性との競合 |
|
対応先 |
|
使用方法
NOREGISTER属性は、スタンバイ・データベースの宛先がOracle Data Guard構成の一部である場合はオプションです。
NOREGISTER属性は、宛先がOracle Data Guard構成の一部でない場合は必須です。
これは、リモートの宛先のみの属性です。各アーカイブREDOログ・ファイルの位置は、常にプライマリ・データベースの制御ファイルに記録されます。
例
次の例は、NOREGISTER属性を示しています。
LOG_ARCHIVE_DEST_5='NOREGISTER'
REOPEN属性は、REDO転送サービスが失敗した宛先の再オープンを試行するまでの最小秒数を指定します。
| カテゴリ | REOPEN [=seconds] |
|---|---|
データ型 |
数値 |
有効な値 |
0秒以上 |
デフォルト値 |
300秒 |
必須属性 |
なし |
属性との競合 |
|
対応先 |
|
使用方法
REOPEN属性はオプションです。
REDO転送サービスは、失敗した宛先の再オープンをログ・スイッチ時に試行します。
REDO転送サービスは、最後のエラーの時刻にREOPEN間隔を加算した時刻が現在の時刻に達していないかどうかをチェックします。達していない場合、REDO転送サービスは宛先の再オープンを試行します。
REOPENは、接続障害のみでなく、すべてのエラーに適用されます。エラーには、ネットワーク障害、ディスク・エラー、クオータ例外などがありますが、これらに制限されません。
オプションの宛先にREOPENを指定すると、エラーが発生した場合にOracleデータベースでオンラインREDOログ・ファイルを上書きできます。MANDATORY宛先にREOPENを指定すると、REDO転送サービスは、REDOデータを正常に転送できない場合にプライマリ・データベースを停止します。この場合には、次のオプションを考慮します。
宛先を遅延させる、宛先をOPTIONALとして指定する、またはSERVICE属性値を変更することで宛先を変更。
代替宛先の指定。
宛先の無効化。
例
次の例は、REOPEN属性を示しています。
LOG_ARCHIVE_DEST_3='SERVICE=stby1 MANDATORY REOPEN=60' LOG_ARCHIVE_DEST_STATE_3=ENABLE
SYNCおよびASYNC属性は、使用するREDO転送モードが同期(SYNC)なのか、非同期(ASYNC)なのかを指定します。
| カテゴリ | SYNC | ASYNC |
|---|---|---|
データ型 |
キーワード |
キーワード |
有効な値 |
該当なし |
該当なし |
デフォルト値 |
該当なし |
なし |
必須属性 |
なし |
なし |
属性との競合 |
|
|
対応先 |
|
|
使用方法
LOG_ARCHIVE_DEST_11からLOG_ARCHIVE_DEST_31パラメータでは、SYNC属性はサポートされません。
トランザクションをコミットするには、SYNC属性が指定されている使用可能な各宛先で、そのトランザクションによって生成されたREDOデータを受信しておく必要があります。
プライマリ・データベースおよびロジカル・スタンバイの、宛先1から10のデフォルトはASYNC (リアルタイム・カスケード)に設定されます。
フィジカル・スタンバイ、スナップショット・スタンバイ、および遠隔同期インスタンスの、宛先1から10のデフォルトはARCH転送モードに設定されます。(ARCH属性は非推奨です。この状況でARCHを使用することは、単にリアルタイムでないカスケードを示します。)
宛先11から31のデフォルトは常にASYNCに設定されます。
関連項目:
LOG_ARCHIVE_DEST_n非推奨属性の詳細は、『Oracle Databaseリファレンス』を参照してください。
例
次の例は、SYNC属性が指定されているLOG_ARCHIVE_DEST_nパラメータを示しています。
LOG_ARCHIVE_DEST_3='SERVICE=stby1 SYNC' LOG_ARCHIVE_DEST_STATE_3=ENABLE
TEMPLATE属性は、宛先でアーカイブされたREDOログの名前について、ディレクトリ仕様と書式テンプレートを定義します。このテンプレートは、REDO宛先のLOG_ARCHIVE_FORMAT初期化パラメータにより定義されたデフォルトのファイル名書式とは異なるファイル名を生成するために使用されます。
| カテゴリ | TEMPLATE=filename_template_%t_%s_%r |
|---|---|
データ型 |
文字列値 |
有効な値 |
該当なし |
デフォルト値 |
なし |
必須属性... |
|
属性との競合... |
|
対応先... |
|
使用方法
TEMPLATE属性はオプションです。TEMPLATEが指定されていない場合、アーカイブされたREDOログには、LOG_ARCHIVE_FORMAT初期化パラメータの値を使用して名前が付けられます。
TEMPLATE属性は、リモート・アーカイブ先でLOG_ARCHIVE_FORMAT初期化パラメータ設定をオーバーライドします。
TEMPLATE属性は、リモート宛先(SERVICE属性で指定された宛先)でのみ有効です。
表17-1で説明されているとおり、filename_templateに指定した値には、%s、%t、および%rディレクティブが必要です。
表17-1 TEMPLATE属性のディレクティブ
| ディレクティブ | 説明 |
|---|---|
%t |
インスタンス・スレッド番号を置換します。 |
%T |
0(ゼロ)を埋め込んだインスタンス・スレッド番号を置換します。 |
%s |
ログ・ファイル順序番号を置換します。 |
%S |
0(ゼロ)を埋め込んだログ・ファイル順序番号を置換します。 |
%r |
リセットログIDを置換します。 |
%R |
0(ゼロ)を埋め込んだリセットログIDを置換します。 |
filename_template値は宛先に送信され、そこでファイル名を作成する前に、変換および検証されます。
VALID_FORは、次の要因に基づき、REDOデータを宛先に書き込むかどうかを指定します。
データベースがプライマリ・ロールとスタンバイ・ロールのどちらで現在実行されているか
オンラインREDOログ・ファイルまたはスタンバイREDOログ・ファイル(あるいはその両方)が、現在この宛先のデータベースでアーカイブされているかどうか
| カテゴリ | VALID_FOR=(redo_log_type, database_role) |
|---|---|
データ型 |
文字列値 |
有効な値 |
該当なし |
デフォルト値 |
|
必須属性 |
なし |
属性との競合 |
なし |
対応先 |
|
使用方法
VALID_FOR属性はオプションです。ただし、Oracle Data Guard構成内の各データベースでREDO転送先ごとにVALID_FOR属性を指定し、構成内のスタンバイ・データベースへのロール推移後もREDO転送が続行されるようにすることをお薦めします。
LOG_ARCHIVE_DEST_n宛先ごとにこれらの要因を構成するには、キーワードのペア(VALID_FOR=(redo_log_type,database_role))を使用してこの属性を指定します。
redo_log_typeキーワードは、次のいずれかをアーカイブする場合に有効な宛先を識別します。
ONLINE_LOGFILE: この宛先は、オンラインREDOログ・ファイルをアーカイブする場合のみ有効です。
STANDBY_LOGFILE: この宛先は、スタンバイREDOログ・ファイルをアーカイブする場合のみ有効です。
ALL_LOGFILES: この宛先は、オンラインREDOログ・ファイルまたはスタンバイREDOログ・ファイルをアーカイブする場合に有効です。
database_roleキーワードは、この宛先がアーカイブに有効なロールを識別します。
PRIMARY_ROLE: この宛先は、データベースがプライマリ・ロールで実行されている場合のみ有効です。
STANDBY_ROLE: この宛先は、データベースがスタンバイ・ロールで実行されている場合のみ有効です。
ALL_ROLES: この宛先は、データベースがプライマリ・ロールまたはスタンバイ・ロールで実行されている場合に有効です。
宛先にVALID_FOR属性を指定しないと、データベースがプライマリ・ロールまたはスタンバイ・ロールで稼働しているかどうかに関係なく、デフォルトで、オンラインREDOログ・ファイルとスタンバイREDOログ・ファイルのアーカイブが宛先で有効になります。このデフォルトの動作は、VALID_FOR属性で(ALL_LOGFILES,ALL_ROLES)キーワード・ペアを設定した場合と同様です。
VALID_FOR属性を使用すると、同じ初期化パラメータ・ファイルをプライマリ・ロールとスタンバイ・ロールの両方に使用できます。
例
次の例は、VALID_FORのデフォルトのキーワードのペアを示します。
LOG_ARCHIVE_DEST_1='LOCATION=/disk1/oracle/oradata VALID_FOR=(ALL_LOGFILES, ALL_ROLES)'
このデータベースがプライマリ・ロールまたはスタンバイ・ロールで稼働している場合、宛先1は、すべてのログ・ファイルをローカル・ディレクトリ/disk1/oracle/oradataにアーカイブします。