Autonomous DatabaseからキャプチャするExtractの構成
Oracle Autonomous Databaseは、Oracle GoldenGateと緊密に統合されています。Autonomous DatabaseインスタンスにExtractを設定する場合、従来のOracle Databaseと比較して、多くの違いがあります。
Oracle Autonomous Databaseセキュリティは、Extractが接続先の特定のテナントからのみ変更を取得できるようにすることで強化されています。このため、ダウンストリームの統合Extractはサポートされていません。
Oracle GoldenGate資格証明の確立
GGADMINアカウントのみが使用されます。GGADMINアカウントは、Autonomous Databaseのプロビジョニング時にデータベース内に作成され、ExtractプロセスとReplicatプロセスの両方に必要なすべての権限がすでにあります。このアカウントはロックされています。Oracle GoldenGateに使用するために、そのロックを解除する必要があります。このアカウントは、Autonomous DatabaseのExtractとReplicatの両方に使用されるものとアカウントと同じです。
ノート:
ALTER USERコマンドを実行して、ggadminユーザーのロックを解除し、そのパスワードを設定します。「クライアント側ツールによるAutonomous Databaseのユーザーの作成」を参照してください。
このALTER USERコマンドは、Autonomous Databaseのadminアカウント・ユーザーが実行する必要があります。
ALTER USER ggadmin IDENTIFIED BY PASSWORD ACCOUNT UNLOCK;
Autonomous DatabaseからキャプチャするOracle GoldenGate Extractの構成の前提条件
-
Oracle Autonomous Database環境がプロビジョニングされ、実行されています。
-
Autonomous Databaseレベルのサプリメンタル・ロギングは、
ADMINまたはGGADMINが有効にする必要があります。
Extract用のAutonomous Databaseサプリメンタル・ロギングの構成
GGADMINまたはADMINアカウントとしてインスタンスにログインして、次のコマンドを実行します。ALTER PLUGGABLE DATABASE ADD SUPPLEMENTAL LOG DATA;DROPするには:ALTER PLUGGABLE DATABASE DROP SUPPLEMENTAL
LOG DATA;SELECT MINIMAL FROM dba_supplemental_logging;MINIMAL
-------
YESこのAutonomous Databaseインスタンスに対してサプリメンタル・ロギングが正しく設定されている場合、MINIMAL列はYESになります。
Autonomous DatabaseからキャプチャするExtractの構成
-
Oracle Autonomous DatabaseインスタンスにOracle GoldenGateをインストールします。
-
Oracle GoldenGate環境のデプロイメントを作成します。これは、Oracle Autonomous DatabaseインスタンスからデータをキャプチャするExtractの作成先デプロイメントです。「デプロイメントの追加」を参照してください。
-
Oracle Autonomous Databaseクライアント資格証明を取得します。
Oracle Autonomous Databaseインスタンスへの接続を確立するには、クライアント資格証明ファイルをダウンロードします。クライアント資格証明をダウンロードするには、Oracle Cloud InfrastructureコンソールまたはDatabase Actions Launchpadを使用できます。クライアント資格証明のダウンロード(ウォレット)に関する項を参照してください。
ノート:
Oracle Autonomous Databaseへの管理者アクセス権がない場合は、資格証明ファイルをダウンロードして提供するようにサービス管理者に依頼してください。
次のステップでは、データベース・アクション起動パッドを使用してクライアント資格証明をダウンロードします。
-
Oracle Autonomous Databaseアカウントにログインします。
-
「データベース・インスタンス」ページで、「データベース・アクション」をクリックします。これにより、データベース・アクション起動パッドが起動します。起動パッドは、ADMINとしてデータベースにログインしようとします。これが成功しない場合は、データベースのADMINのユーザー名とパスワードの入力を求められます。
-
データベース・アクション起動パッドの「管理」で、「クライアント資格証明(ウォレット)のダウンロード」を選択します
-
クライアント資格証明zipファイルを保護するためのパスワードを入力して、「ダウンロード」をクリックします。
ノート:
ウォレットのダウンロード時に指定するパスワードにより、ダウンロードしたクライアント資格証明ウォレットが保護されます。 -
資格証明
zipファイルをローカル・システムに保存します。
資格証明zipファイルには、次のファイルが含まれています。-
cwallet.sso -
ewallet.p12 -
keystore.jks -
ojdbc.properties -
sqlnet.ora -
tnsnames.ora -
truststore.jks -
ewallet.pem -
README.txt
sqlnet.oraおよびtnsnames.oraファイルを参照して更新(必要な場合)します。 -
-
Autonomous Databaseインスタンスに接続するように、Oracle GoldenGateが稼働しているサーバーを構成します。
-
Oracle GoldenGateがインストールされているサーバーにログインします。
-
Oracle Autonomous Databaseインスタンスからダウンロードした資格証明
zipファイルをOracle GoldenGateサーバーに転送します。 -
Oracle GoldenGateサーバーで、新しいディレクトリ(たとえば、
/u02/data/adwc_credentials)に資格証明ファイルを解凍します。これがキー・ディレクトリになります。 -
接続の詳細を構成するには、Oracle GoldenGateインスタンスのOracle Clientの場所から
tnsnames.oraファイルを開きます。 -
LOWコンシューマ・グループdbname_lowを含む接続文字列(たとえば、graphdb1_low)を使用して、ローカルtnsnames.oraファイルに移動します。Oracle Database Net Servicesリファレンスのtnsnames.oraファイルのローカル・ネーミング・パラメータを参照してください。
ノート:
資格証明ファイルで提供されるtnsnames.oraファイルには、次のように識別できる3つのデータベース・サービス名が含まれています。ADWC_Database_Name_low ADWC_Database_Name_medium ADWC_Database_Name_highOracle GoldenGateには
ADWC_Database_Name_lowを使用するようにお薦めします。Oracle Autonomous Database Serverlessの使用ガイドのAutonomous Databaseの事前定義済データベース・サービス名、またはOracle Autonomous Database on Dedicated Exadata InfrastructureのAutonomous Databaseの事前定義済データベース・サービス名を参照してください。 -
Oracle GoldenGateインスタンスの
tnsnames.oraファイルを編集して、tnsnames.oraファイルで使用可能な接続詳細がキー・ディレクトリ(Autonomous Databaseからダウンロードした資格証明zipファイルを解凍したディレクトリ)に含まれるようにします。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パラメータ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)) -
ウォレットを構成するには、Oracle GoldenGateインスタンスのOracle Clientの場所に
sqlnet.oraファイルを作成します。cd /u02/data/oci/network/admin ls sqlnet.ora tnsnames.oraOracle Cloud MarketplaceでのOracle GoldenGateの使用のAutonomous Databaseクライアント資格証明を参照してください。
-
この
sqlnet.oraファイルを編集して、キー・ディレクトリが含まれるようにします。WALLET_LOCATION = (SOURCE = (METHOD = file) (METHOD_DATA = (DIRECTORY="/u02/data/adwc_credentials"))) SSL_SERVER_DN_MATCH=yes
-
- Microservicesを使用しているかどうかに応じて、管理クライアントを使用してOracle GoldenGateデプロイメントにログインします。
-
GGADMINユーザーとパスワードを格納するための資格証明を作成します。このユーザーは、コマンドラインからAutonomous Databaseに接続して、データベース接続が必要になるコマンドを実行するために使用します。また、Extractデータベース接続のためのUSERIDALIASパラメータにも使用します。ALTER CREDENTIALSTORE ADD USER ggadmin@dbgraph1_low PASSWORD complex_password alias adb_alias -
DBLOGINを使用してデータベースに接続します。DBLOGINユーザーは、adb_aliasアカウント・ユーザーであることが必要です。DBLOGIN USERIDALIAS adb_alias -
ADD TRANDATAまたはADD SCHEMATRANDATAを使用して、キャプチャする表のサプリメンタル・ロギングを構成します。データベース・インスタンスに直接接続しているため、これらのコマンドにデータベース名を含める必要はありません。次に例を示します。ADD TRANDATA HR.EMPまたはADD SCHEMATRANDATA HR「Autonomous DatabaseからキャプチャするOracle GoldenGate Extractの構成の前提条件」を参照してください。
-
ハートビート表を追加します。
ADD HEARTBEATTABLE -
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.EMPLOYEEにHR.EMPをレプリケートする場合、map文は次のようになります。MAP HR.EMP, TARGET COUNTRY.EMPLOYEE; -
Oracle Autonomous DatabaseインスタンスにExtractを登録します。たとえば、
exteというExtractを登録するには、次のコマンドを使用します。REGISTER EXTRACT exte DATABASE -
この時点で、Extractを起動して、Oracle Autonomous Databaseインスタンスへのデータ・レプリケーションを実行できます。次に例を示します。
START EXTRACT exteこれで、Oracle Autonomous Database用にExtractを構成するプロセスが完了し、その他のExtractプロセスと同様に使用できます。