Oracle GoldenGate のインストールと構成
GoldenGate は、Oracle テーブルの変更を監視し、変更通知メッセージを TIBCO EMS キューに送信して、依存クエリを更新できるようにし、データ テーブルの変更がビューに影響を与える可能性がある場合にサブスクライブしたクライアントに通知できるようにします。
Oracle GoldenGate サーバーへのアクセスは実装環境によって異なり、PuTTY や WinSCP などの SSH ユーティリティの使用が必要になる場合があります。使用されるサーバー アドレス、ログイン、パスワード、およびポートは、すべて環境および実装に依存します。サンプル スクリプト、パラメーター ファイル、およびコードでは、GoldenGate のインストール ディレクトリ $GGHOME は /opt/oracle/ggs/ですが、これは構成可能です。
3 つの *.prm ファイルパラメーターである GETUPDATEBEFORES、NOCOMPRESSUPDATES、NOCOMPRESSDELETES を含める必要があります。これらの設定によって、変更通知メッセージの形式が制御され、TDV が予期する形式でメッセージが送信されるようになるためです。
いずれかのパラメーターが省略されている場合、メッセージの内容とメッセージの形式が正しくない可能性があり、不正なデータの使用を防ぐために、増分的に維持されるすべてのキャッシュが無効としてマークされる可能性があります。GoldenGate インスタンスからの不正な変更メッセージにより、中央イベント サーバー上の 変更管理サービスが強制的にシャットダウンされる可能性があるため、最終使用前にシステムを修正できます。
messagesング エラーのほとんどは、キャッシュが無効になり、メッセージが修正されるまで CMS が終了します。エラー メッセージは cs_server.log に記録されます。
GoldenGate を構成するには
| 1.
|
GoldenGate を、監視対象の Oracle データ ソースと同じ場所にインストールします。要件とインストールに関する考慮事項の説明については、GoldenGate のドキュメントを参照してください。 |
| 2.
|
composite_cdc.jar ファイルを TDV インストール ディレクトリから次のディレクトリにコピーします。 |
<$GoldenGateHome>/GGIEJ_304/javaue/resources/lib
TDV CDC JAR は GoldenGate メッセージにヘッダーを挿入し、Java UE のトランザクション クラスパスの SCN 値を含めます。
| 3.
|
Oracle GoldenGate サーバーにログインし、$GGHOME/dirprm に移動します。 |
| 4.
|
GGSCI コマンド・ライン ユーティリティを使用して、EXTRACT グループを作成します。 |
GGSCI (comp-name)
1> ADD EXTRACT <ExtractGroupName>, TRANLOG, BEGIN NOW
文字列 <ExtractGroupName> は 8 文字以下にする必要があります。
| 5.
|
データ ソース テーブルの監視に必要な数の抽出を作成します。各抽出は、異なるテーブル セットを監視するように設定できる個別のプロセスとして実行されます。抽出のグループは、.obey ファイルから、またはバッチまたはシェル スクリプトによってまとめて開始および停止できます。詳細については、『GoldenGate 管理者ガイド』を参照してください。 |
| 6.
|
GGSCI コマンド・プロンプトで次のように入力して証跡ファイルを抽出します。 |
GGSCI (comp-name)
2> ADD EXTTRAIL <C:\sub-dir\…\$GGHOME\dirdat\XX>, EXTRACT <ExtractGroupName>
XX は、exttrail ファイル名グループの 2 文字の名前です。証跡ファイルはすべて、このプレフィックスと 6 桁の増分番号が付けられ、$GGHOME/dirdat ディレクトリに配置されます。GGSCI ユーティリティーは、新しい exttrail と抽出パラメーター ファイルを作成します。このファイルは、監視と抽出のためのテーブル リソースを定義します。
| 7.
|
テキスト エディターを使用して、次のコマンドで <ExtractGroupName>.prm パラメーター ファイルを編集します。 |
GGSCI (comp-name)
3> EDIT PARAMS <ExtractGroupName>
| 8.
|
パラメーター ファイルを /dirprm サブ ディレクトリに保存します。 |
パラメーター ファイルの例
この例では、
| •
|
EXTGROUP は <ExtractGroupName> です。 |
| •
|
EG は、EXTTRAIL ファイル名グループの 2 文字の名前です。 |
| •
|
TRANLOGOPTIONS は、自動ストレージ管理ユーザー・ログインなどのトランザクション ログ オプションを制御して、SQL 実行オプションを設定します。 |
| •
|
WILDCARDRESOLVE はデフォルトを明示的に設定します。SQL EXEC は、日付データ タイプの処理が TDV システムと一致するように NLS_DATE_FORMAT 処理を設定します。 |
userid UserName, password password
exttrail ./dirdat/EG
TRANLOGOPTIONS ASMUSER sys@VAULTREPO_ASM, ASMPASSWORD password333
WILDCARDRESOLVE DYNAMIC
SQLEXEC "ALTER SESSION SET NLS_DATE_FORMAT='YYYY-MM-DD HH24:MI:SS'"
-- The following parameters explicitly set the defaults:
EOFDELAYCSECS 1
FLUSHCSECS 1
--GROUPTRANSOPS 10
REPORTCOUNT EVERY 1 SECONDS, RATE
-- The following three parameters are required to ensure compatibility with CMS:
GETUPDATEBEFORES
NOCOMPRESSUPDATES
NOCOMPRESSDELETES
-- Monitored tables are listed here. The following tables are used as examples.
table qacntrial.address;
table qacntrial.bid;
table qacntrial.category;
table qacntrial.creditcard;
table qacntrial.favoritesearch;
table qacntrial.item;
table qacntrial.sale;
table qacntrial.users;