機械翻訳について

8 シナリオ: 透過的アプリケーション・コンティニュイティの構成

このシナリオでは、Oracle Database ApplianceでのOracle Data Guardを使用した透過的アプリケーション・コンティニュイティ(TAC)の構成について説明します。

アプリケーション・コンティニュイティ(AC)は、Oracle Real Application Clusters (Oracle RAC)、Oracle RAC One NodeおよびOracle Active Data Guardオプションで使用できます。 停止後に影響を受けるデータベース・セッションの進行中の作業をリカバリすることで、エンド・ユーザーおよびアプリケーションの停止をマスクします。 ACは、アプリケーションの下でこのリカバリを実行するため、停止はわずかに遅延した実行としてアプリケーションに表示されます。 これにより、計画外停止と計画メンテナンスの両方のユーザー・エクスペリエンスが向上します。 これにより、Oracleデータベースを使用するシステムおよびアプリケーションのフォルト・トレランスが強化されます。 待機時間、プライマリとスタンバイの間の帯域幅によっては、完全なサイト・フェイルオーバーが必要になる場合があります。そうしないと、プライマリ・サイトでまだ実行されているアプリケーションのレスポンス時間が、2つのサイト間のネットワーク・レイテンシに苦しむ可能性があります。 詳細は、「連続可用性」 yの技術概要を参照してください。 この技術概要で説明するすべてのオプションは、Oracle Database Applianceに適用されます。

環境

2ノードのプライマリOracle RACデータベースおよび2ノードのスタンバイOracle RACデータベース環境で透過的アプリケーション・コンティニュイティ(TAC)を設定する環境を理解します。

コンポーネント プライマリOracle Database Appliance スタンバイOracle Database Appliance
Database型 2ノードのOracle RACデータベース 2ノードのOracle RACデータベース
データベース名 ラック ラック
一意のデータベース名 racwtac_pri racwtac_stby
TACで保護するプラガブル・データベース(PDB) buda buda

Oracle Data Guardの構成

アプリケーション・コンティニュイティを使用してOracle Data Guardを構成するステップを理解します。

次のステップを実行します。
  1. プライマリ・アプライアンスとスタンバイ・アプライアンスの間にOracle Active Data Guardが構成されていることを確認します:
    # odacli list-dataguardstatus
    Updated about 1 minute(s) ago
    It can take up to several minutes to update Data Guard status. You can re-run the command to obtain the latest status.
    ID                                       Name                             Database Name        Role       Protection Mode    Apply Lag       Transport Lag   Apply Rate      Status
    ---------------------------------------- -------------------------------- -------------------- ---------- ------------------ --------------- --------------- --------------- ----------
    9511c5cc-365c-4e85-9dee-8a55ae6f01fa     racwtac_pri_racwtac_stby         racwtac              PRIMARY    MAX_PERFORMANCE    0 seconds       0 seconds       2.00 KByte/s    CONFIGURED
  2. プライマリ・システムで、いずれかのノードでoracleユーザーとしてログインし、ロールベースの透過的アプリケーション・コンティニュイティ・タイプのサービスを構成します:
    $ export ORACLE_HOME=path_of_the_RDBMS_home
    $ $ORACLE_HOME/bin/srvctl add service -db racwtac_pri -service tacservice -pdb buda -preferred racwtac1,racwtac2 -failover_restore AUTO -commit_outcome TRUE -failovertype AUTO -replay_init_time 600 -retention 86400 -notification TRUE -drain_timeout 300 -stopoption IMMEDIATE -role PRIMARY

    ここで、failovertype = AUTOまたはTRANSACTION(アプリケーション・コンティニュイティの場合)、commit_outcome = TRUE(トランザクション・ガードの場合)、failoverretry =リプレイ当たりの接続再試行回数、failoverdelay =接続再試行間の遅延(秒)。

  3. プライマリでサービスを開始します:
    $ $ORACLE_HOME/bin/srvctl start service -s tacservice -d racwtac_pri
    
    $ $ORACLE_HOME/bin/srvctl status service -s tacservice -d racwtac_pri
    Service tacservice is running on instance(s) racwtac1,racwtac2
    
    $ORACLE_HOME/bin/srvctl config service -d racwtac_pri -s tacservice
    Service name: tacservice
    Server pool:
    Cardinality: 2
    Service role: PRIMARY
    Management policy: AUTOMATIC
    DTP transaction: false
    AQ HA notifications: true
    Global: false
    Commit Outcome: true
    Failover type: AUTO
    Failover method:
    Failover retries: 30
    Failover delay: 10
    Failover restore: AUTO
    Connection Load Balancing Goal: LONG
    Runtime Load Balancing Goal: NONE
    TAF policy specification: NONE
    Edition:
    Pluggable database name: buda
    Hub service:
    Maximum lag time: ANY
    SQL Translation Profile:
    Retention: 86400 seconds
    Replay Initiation Time: 600 seconds
    Drain timeout: 300 seconds
    Stop option: immediate
    Session State Consistency: AUTO
    GSM Flags: 0
    Service is enabled
    Preferred instances: racwtac1,racwtac2
    Available instances:
    CSS critical: no
    Service uses Java: false
  4. スタンバイ・システムで、いずれかのノードでoracleユーザーとしてログインし、同じロールベースの透過的アプリケーション・コンティニュイティ・タイプのサービスを構成します:
    $ $ORACLE_HOME/bin/srvctl add service -db racwtac_stby -service tacservice -pdb buda -preferred racwtac1,racwtac2 -failover_restore AUTO -commit_outcome TRUE -failovertype AUTO -replay_init_time 600 -retention 86400 -notification TRUE -drain_timeout 300 -stopoption IMMEDIATE -role PRIMARY
  5. 次に、TACが提供するすべての利点にアクセスするためにアプリケーションで使用する必要があるJDBC接続文字列を示します:
    jdbc:oracle:thin:@(DESCRIPTION=(CONNECT_TIMEOUT=90)(TRANSPORT_CONNECT_TIMEOUT=3)(RETRY_COUNT=50)(RETRY_DELAY=3)(ADDRESS_LIST=(LOAD_BALANCE=ON)(ADDRESS=(PROTOCOL = TCP)(HOST = primary-scan.oracle.com)(PORT = 1521)))(ADDRESS_LIST=(LOAD_BALANCE=ON)(ADDRESS=(PROTOCOL = TCP)(HOST = standby-scan.oracle.com)(PORT = 1521)))(CONNECT_DATA=(SERVER = DEDICATED)(SERVICE_NAME = tacservice.oracle.com)))