読取り専用キャッシュ・グループを使用したアクティブ・スタンバイ・ペアの構成

非同期REDO転送モードのActive Data Guardでは、レプリケートされた読取り専用キャッシュ・グループのみが含まれるアクティブ・スタンバイ・ペアのレプリケーション・スキームがサポートされています。

アクティブ・スタンバイ・ペアを作成する前に、レプリケートされた読取り専用キャッシュ・グループをすべて作成する必要があります。アクティブ・スタンバイ・ペアを作成する際はレプリケートされた読取り専用キャッシュ・グループを除外することができず、作成後のアクティブ・スタンバイ・ペアには別のレプリケートされた読取り専用キャッシュ・グループを追加することができません。

レプリケートされた読取り専用キャッシュ・グループをサポートするようにアクティブ・スタンバイ・ペアを作成および構成する場合、次の手順を実行して非同期Active Data Guardをサポートします。

  1. アクティブ・スタンバイ・ペアを作成する場合は、アクティブ・マスターとスタンバイ・マスターの両方を物理的に同じサイト内に保持することをお薦めします。これらは同じサイト内の異なるホスト上に配置できます。
  2. 障害時リカバリに読取り専用サブスクライバが必要な場合は、スタンバイOracleデータベースと同じ障害時リカバリ・サイトで読取り専用サブスクライバを追加し、そのサブスクライバをキャッシュ・グループに対して有効にすることができます。Active Data Guardの使用時に作成する必要があるサブスクライバは、ttRepAdmin -duplicate -activeDataGuardオプションを設定した複製操作を使用して作成されます。

    -activeDataGuardオプションは、Active Data Guard環境のみのためのオプションで、これを使用するとサブスクライバは、スタンバイ・マスターの場合と同様に、レプリケートされた読取り専用キャッシュ・グループをそのままの状態に保つことができます。サブスクライバはこのようなキャッシュ・グループを保持するため、ttRepAdminユーティリティ・コマンドラインにOracleキャッシュ管理ユーザーの名前およびパスワードを指定する必要があります。

    ノート:

    あるいは、ttRepDuplicateExArg.flagsTT_REPDUP_ADGフラグを設定して、ttRepDuplicateEx C関数を使用できます。

    次の例では、-activeDataGuardオプション、キャッシュ管理ユーザーの名前およびパスワードを指定してスタンバイ・マスターから複製し、障害時リカバリ・サイトで読取り専用サブスクライバを作成します。

    ttRepAdmin -duplicate -from master2 -host node1
     -uid cacheadmin -pwd timesten -cacheuid cacheadmin -cachepwd orapwd 
     -activeDataGuard adgsubscriber
  3. プライマリOracleデータベースでキャッシュ環境を作成します。これらのステップはいずれもスタンバイOracleデータベースで実行する必要はありません。
  4. プライマリOracleデータベースで、SYS.DBMS_FLASHBACKパッケージのEXECUTE権限をOracleキャッシュ管理ユーザーに付与します。この権限は、initCacheAdminSchema.sqlスクリプトとgrantCacheAdminPrivileges.sqlスクリプトの一部として付与されます。
  5. Oracle DatabaseからデータをキャッシュするTimesTenデータベースの場合と同様に、同じ接続属性を構成します。さらに、スタンバイOracleデータベースからのトランザクションの監視も行っているため、スタンバイOracleデータベース・インスタンスのネット・サービス名を使用してStandbyNetServiceName接続属性を構成します。

    Microsoft Windowsシステムの場合、Oracle Databaseインスタンスのネット・サービス名は、「TimesTen ODBC Setup」ダイアログ・ボックスにある「TimesTen Cache」タブの「Oracle Net Service Name」フィールドで指定します。スタンバイOracleデータベース・インスタンスは、同じページの「Standby Oracle Net Service Name」フィールドで指定します。

    アクティブ・マスターでStandbyNetServiceName ODBC.INI属性を構成して、フィジカル・スタンバイOracleデータベースのネット・サービス名を構成します。

    [cachedb]
    DataStore=/myDb/cachedb
    PermSize=256
    TempSize=256
    DatabaseCharacterSet=WE8DEC
    OracleNetServiceName=primaryinstance
    StandbyNetServiceName=standbyinstance