Oracle Autonomous Database用のExtractの構成

次に、Oracle Autonomous DatabaseからキャプチャするExtractを構成するステップを示します:
  1. Oracle Autonomous DatabaseインスタンスにOracle GoldenGateをインストールします。

  2. Oracle GoldenGate環境のデプロイメントを作成します。これは、Oracle Autonomous DatabaseインスタンスからデータをキャプチャするExtractの作成先デプロイメントです。「デプロイメントの追加」を参照してください。

  3. Oracle Autonomous Databaseクライアント資格証明を取得します。

    Oracle Autonomous Databaseインスタンスへの接続を確立するには、クライアント資格証明ファイルをダウンロードします。クライアント資格証明をダウンロードするには、Oracle Cloud InfrastructureコンソールまたはDatabase Actions Launchpadを使用できます。クライアント資格証明のダウンロード(ウォレット)に関する項を参照してください。

    ノート:

    Oracle Autonomous Databaseへの管理者アクセス権がない場合は、資格証明ファイルをダウンロードして提供するようにサービス管理者に依頼してください。

    次のステップでは、データベース・アクション起動パッドを使用してクライアント資格証明をダウンロードします。

    1. Oracle Autonomous Databaseアカウントにログインします。

    2. 「データベース・インスタンス」ページで、「データベース・アクション」をクリックします。これにより、データベース・アクション起動パッドが起動します。起動パッドは、ADMINとしてデータベースにログインしようとします。これが成功しない場合は、データベースのADMINのユーザー名とパスワードの入力を求められます。

    3. データベース・アクション起動パッドの「管理」で、「クライアント資格証明(ウォレット)のダウンロード」を選択します

    4. クライアント資格証明zipファイルを保護するためのパスワードを入力して、「ダウンロード」をクリックします。

      ノート:

      ウォレットのダウンロード時に指定するパスワードにより、ダウンロードしたクライアント資格証明ウォレットが保護されます。
    5. 資格証明zipファイルをローカル・システムに保存します。

    資格証明zipファイルには、次のファイルが含まれています。
    • cwallet.sso

    • ewallet.p12

    • keystore.jks

    • ojdbc.properties

    • sqlnet.ora

    • tnsnames.ora

    • truststore.jks

    • ewallet.pem

    • README.txt

    Autonomous Databaseインスタンスと連動するようにOracle GoldenGateを構成するときには、sqlnet.oraおよびtnsnames.oraファイルを参照して更新(必要な場合)します。
  4. Autonomous Databaseインスタンスに接続するように、Oracle GoldenGateが稼働しているサーバーを構成します。

    1. Oracle GoldenGateがインストールされているサーバーにログインします。

    2. Oracle Autonomous Databaseインスタンスからダウンロードした資格証明zipファイルをOracle GoldenGateサーバーに転送します。

    3. Oracle GoldenGateサーバーで、新しいディレクトリ(たとえば、/u02/data/adwc_credentials)に資格証明ファイルを解凍します。これがキー・ディレクトリになります。

    4. 接続の詳細を構成するには、Oracle GoldenGateインスタンスのOracle Clientの場所からtnsnames.oraファイルを開きます。

    5. LOWコンシューマ・グループdbname_lowを含む接続文字列(たとえば、graphdb1_low)を使用して、ローカルtnsnames.oraファイルに移動します。

      highは接続文字列で使用されます(graphdb1_highなど)が、デフォルトのggadminユーザーの接続は、lowでのみ行われます。

      Oracle Database Net Servicesリファレンスtnsnames.oraファイルのローカル・ネーミング・パラメータを参照してください。

      ノート:

      資格証明ファイルで提供されるtnsnames.oraファイルには、次のように識別できる3つのデータベース・サービス名が含まれています。
      ADWC_Database_Name_low
      ADWC_Database_Name_medium
      ADWC_Database_Name_high

      Oracle GoldenGateにはADWC_Database_Name_lowを使用するようにお薦めします。Oracle Autonomous Database Serverlessの使用ガイドのAutonomous Databaseの事前定義済データベース・サービス名、またはOracle Autonomous Database on Dedicated Exadata InfrastructureAutonomous Databaseの事前定義済データベース・サービス名を参照してください。

    6. Oracle GoldenGateインスタンスのtnsnames.oraファイルを編集して、tnsnames.oraファイルで使用可能な接続詳細がキー・ディレクトリ(Autonomous Databaseからダウンロードした資格証明zipファイルを解凍したディレクトリ)に含まれるようにします。

      ノート:

      Autonomous Databaseは、ポート1521および1522で接続できます。ただし、Oracle GoldenGateの接続はポート1522でのみ機能します。これは必須です。1521を使用すると、次のエラーが表示されます:
      Login failed. OCI Error ORA (status = 24459-ORA-24459: OCISessionGet() timed out waiting for pool to create new connections\\n)", "code": "OGG-08110"
      Sample Connection String
      adw1_low. = (description=
                       (retry_count=20)(retry_delay=3)
                       (address=(protocol=tcps)(port=1522)(host=adb-preprod.us-phoenix-1.oraclecloud.com))
                       (connect_data=(service_name=okd2ybgcz4mjx94_graphdb1_low.adb.oraclecloud.com))
                       (security=(ssl_server_cert_dn="CN=adwc-preprod.uscom-east-1.oraclecloud.com,OU=Oracle BMCS US,O=Oracle Corporation,L=Redwood City,ST=California,C=US"))
                     )
      データベースがファイアウォールで保護されている環境内にある場合、データベースに直接アクセスできない可能性があります。既存のHTTPプロキシを使用すると、sqlnet.oraおよびtnsnames.oraに次の変更を加えることで、そのファイアウォールを通過できます。
      • sqlnet parameters
      • address modification of tns_alias
      ネットワークのタイムアウトまたは接続の喪失が原因でExtractが応答しなくなった場合は、次の内容をtnsnames.oraファイルの接続プロファイルに追加できます。
      (DESCRIPTION = (RECV_TIMEOUT=30) (ADDRESS_LIST =
            (LOAD_BALANCE=off)(FAILOVER=on)(CONNECT_TIMEOUT=3)(RETRY_COUNT=3) (ADDRESS = (PROTOCOL = TCP)(HOST = adb-preprod.us-phoenix-1.oraclecloud.com)(PORT = 1522))
    7. ウォレットを構成するには、Oracle GoldenGateインスタンスのOracle Clientの場所にsqlnet.oraファイルを作成します。
      cd /u02/data/oci/network/admin
      ls
      sqlnet.ora tnsnames.ora

      Oracle Cloud MarketplaceでのOracle GoldenGateの使用Autonomous Databaseクライアント資格証明を参照してください。

    8. このsqlnet.oraファイルを編集して、キー・ディレクトリが含まれるようにします。

      WALLET_LOCATION = (SOURCE = (METHOD = file) (METHOD_DATA = (DIRECTORY="/u02/data/adwc_credentials"))) 
      SSL_SERVER_DN_MATCH=yes
  5. Microservicesを使用しているかどうかに応じて、管理クライアントを使用してOracle GoldenGateデプロイメントにログインします。
  6. GGADMINユーザーとパスワードを格納するための資格証明を作成します。このユーザーは、コマンドラインからAutonomous Databaseに接続して、データベース接続が必要になるコマンドを実行するために使用します。また、Extractデータベース接続のためのUSERIDALIASパラメータにも使用します。
    ALTER CREDENTIALSTORE ADD USER 
    ggadmin@dbgraph1_low PASSWORD complex_password alias adb_alias
    接続文字列にhighを指定して次のコマンドを使用することもできますが、lowを使用して接続されます。
    ALTER CREDENTIALSTORE ADD USER 
    ggadmin@dbgraph1_high PASSWORD complex_password alias adb_alias
  7. DBLOGINを使用してデータベースに接続します。DBLOGINユーザーは、adb_aliasアカウント・ユーザーであることが必要です。
    DBLOGIN USERIDALIAS adb_alias
  8. ADD TRANDATAまたはADD SCHEMATRANDATAを使用して、キャプチャする表のサプリメンタル・ロギングを構成します。データベース・インスタンスに直接接続しているため、これらのコマンドにデータベース名を含める必要はありません。次に例を示します:
    ADD TRANDATA HR.EMP
    または
    ADD SCHEMATRANDATA HR

    「Oracle GoldenGate ExtractのためのOracle Autonomous Databaseでの最小サプリメンタル・ロギングの有効化」を参照してください。

  9. ハートビート表を追加します。
    ADD HEARTBEATTABLE
  10. Extractを追加してOracle Autonomous Databaseインスタンスからキャプチャするように構成します。Extractの作成ステップは、「オンラインExtractの追加」を参照してください。

    Oracle GoldenGate Extractは、Oracle Autonomous Databaseインスタンスと連携して、特定のデータベース・インスタンスからのみ取得するように設計されています。つまり、データベース・インスタンス名はTABLEまたはMAP文に必要ではありません。

    次の例では、exteというExtract (Oracle Autonomous Databaseから取得するために必要)を作成し、これをすぐに開始するように指示します。
    ADD EXTRACT exte, INTEGRATED TRANLOG, BEGIN NOW 
    特定のテーブルをキャプチャするには、2つのパーツ・オブジェクト名を使用します。たとえば、Oracle Autonomous Databaseインスタンスの表HR.EMPからキャプチャするには、このエントリをExtractパラメータ・ファイルで使用します。
    TABLE HR.EMP;
    COUNTRY.EMPLOYEEHR.EMPをレプリケートする場合、map文は次のようになります。
    MAP HR.EMP, TARGET COUNTRY.EMPLOYEE;
  11. Oracle Autonomous DatabaseインスタンスにExtractを登録します。たとえば、exteというExtractを登録するには、次のコマンドを使用します。

    REGISTER EXTRACT exte DATABASE
  12. この時点で、Extractを起動して、Oracle Autonomous Databaseインスタンスへのデータ・レプリケーションを実行できます。次に例を示します。
    START EXTRACT exte

    これで、Oracle Autonomous Database用にExtractを構成するプロセスが完了し、その他のExtractプロセスと同様に使用できます。