7 Oracle GoldenGateレプリケーションのインスタンス化および起動

この章では、ターゲット・データの初期ロードの構成、レプリケーションのインスタンス化に必要なプロセスの追加、インスタンス化の実行について手順を説明します。これらのステップを実行すると、ソースとターゲット間でデータの整合性が取られ(初期同期と呼ばれます)、整合性が常に保たれるように、Oracle GoldenGateによって進行中のトランザクション変更が取得および配信されます。

内容は次のとおりです。

インスタンス化プロセスについて

Oracle GoldenGate環境の初期化の際、最初のデータ同期を行い、Oracle GoldenGateプロセスを初めて起動します。これらの手順とともに、「DB2 for iのためのOracle GoldenGateの構成」でパラメータ・ファイルを作成したプロセス・グループを作成します。

Extractプロセス・グループを作成するには、データ取得のための最初の開始位置を確定する必要があります。この最初の位置は、次のいずれかに基づくトランザクション境界をベースにします。

  • タイムスタンプ

  • ジャーナルの最後

  • 特定のシステム順序番号

  • ジャーナルにおける特定の順序番号

Extractを初めて起動してデータの取得を開始すると、指定した開始点より後に発生したトランザクション・データはすべて取得されますが、開始点より前に発生したデータは取得されません。破棄される可能性のある進行中のトランザクションの途中でExtractが起動されないことを保証するには、取得対象の表を非アクティブ状態に設定します。ALCOBJコマンドを使用してシステムを制限付きの状態にしてオブジェクトまたはライブラリをロックするか、それらの表の現在のトランザクションをすべて特定の時点で停止します。

初期化の完了後、ロックしたオブジェクトのロックを解除することを忘れないでください。これを行うには、オブジェクトをロックしたセッションからログオフするか、OS/400コマンドラインからDLCOBJコマンドを使用します。

基本的なOracle GoldenGateのインスタンス化のステップの概要

次の手順では、第4章で構成した基本的なレプリケーション環境をインスタンス化する方法を示します。ステップは次のとおりです。

インスタンス化の前提条件

Oracle GoldenGateプロセスまたはネイティブ・データベース・ロード・プロセスを起動する前に、次のステップを実行する必要があります。

変更の取得および配信の構成

レプリケーション環境のインスタンス化の準備ができるまでに、「DB2 for iのためのOracle GoldenGateの構成」の説明に従って完成したパラメータ・ファイルを使用してExtractおよびReplicatのプロセス・グループをすべて構成する必要があります。

さらに、このマニュアルに記載されている他の設定要件をすべて満たす必要があります。

コリジョン処理の追加

ソース・データベースが初期ロード時にアクティブなままである場合、Replicatパラメータ・ファイルにコリジョン処理ロジックを追加する必要があります。このロジックでは、静的データのターゲット表へのロードと、Oracle GoldenGateによるターゲット表へのトランザクション変更のレプリケートが同時に行われるために発生する競合が処理されます。

コリジョンを処理するには、HANDLECOLLISIONSパラメータをReplicatパラメータ・ファイルに追加して、次を解決します。

  • すでに存在する行のINSERT操作。

  • 存在しない行のUPDATEおよびDELETE操作。

このパラメータの詳細は、『Oracle GoldenGate Windows and UNIXリファレンス・ガイド』を参照してください。

ターゲット表の準備

ロードを高速に行い、エラーが起こらないようにするための推奨事項は、次のとおりです。

  • データ: ターゲット表が空であることを確認します。そうでない場合、行の重複エラーや既存の行とロードされる行との間に競合が発生することがあります。

  • 制約: 外部キー制約およびチェック制約をまだ無効にしていない場合は、無効にします。外部キー制約ではエラーが発生する可能性があり、チェック制約ではロード・プロセスが低速化する可能性があります。

  • 索引: ターゲット表から索引を削除します。索引は、初期ロード・プロセスによって実行される挿入には不要で、速度を大幅に低下させます。ロードの完了後、索引を再度追加できます。

  • キー: HANDLECOLLISIONS関数を使用してロードによる増分データ変更を調整するには、各ターゲット表に主キーまたは一意キーが必要です。アプリケーションを通じてキーを作成できない場合、TABLEパラメータおよびMAPパラメータのKEYCOLSオプションを使用して、Oracle GoldenGate用の代替キーとなる列を指定します。キーを作成できない場合、影響を受けるロードのソース表を停止する必要があります。

インスタンス化手順の効率化

インスタンス化プロセスをより効率的に進めるための提案をいくつか次に示します。

プロセス・グループ間でのパラメータの共有

変更同期パラメータ・ファイルで使用するパラメータの一部は、初期ロードのExtractおよびReplicatパラメータ・ファイルにも必要です。共通性を利用するには、次の方法を使用します。

  • 共通のパラメータを一方のパラメータ・ファイルから他方にコピーします。

  • 共通のパラメータを中央のファイルに格納し、各パラメータ・ファイルでOBEYパラメータを使用して取得します。

  • 共通のパラメータに対するOracle GoldenGateマクロを作成し、MACROパラメータを使用して各パラメータ・ファイルからマクロをコールします。

並列プロセスの使用

並列の初期ロード・プロセスを構成し、初期ロードの実行時間を短くすることができます。同じプロセス・セット内で、外部キー関係とともに表を維持することが重要です。規模の大きい表は、別のプロセス・セットを使用するか、多数のプロセス・セット間でロードを単純に分配すると、規模の小さい表と分けることができます。並列プロセスを正しく構成するには、『Oracle GoldenGateの管理for Windows and UNIX』を参照してください。

初期ロードの構成

Oracle GoldenGateでは、Oracle専用の次のロード方式がサポートされます。

ファイルからReplicatへの初期ロードの構成

initsyncreplicat.jpgの説明が続きます。
図initsyncreplicat.jpgの説明

Replicatを使用してターゲット・データを構築するには、初期ロードExtractを使用してソース表からソース・レコードを抽出し、それらのレコードを正規形式で抽出ファイルに書き込みます。初期ロードReplicatは、データベース・インタフェースを使用してこのファイルからデータをロードします。ロード中、変更同期グループは、増分変更を抽出してレプリケートします。その後、これらの変更は、ロードの結果に応じて調整されます。

ロード中、レコードは、一度に1件ずつターゲット・データベースに適用されるため、この方法はネイティブのDB2 for iロード・ユーティリティを使用するより非常に遅くなる可能性があります。この方法では、ソース・システムとターゲット・システムのいずれかでデータ変換を実行できます。

ファイルからReplicatへのロードを構成するには

  1. ソース・システムとターゲット・システムで、GGSCIを実行してManagerを起動します。
    START MANAGER
    
  2. ソース・システムで、次のコマンドを発行して初期ロードExtractのパラメータ・ファイルを作成します。このExtractには、トランザクション・データを取得するExtractグループとは異なる名前が必要です。
    EDIT PARAMS initial-load Extract name
    
  3. 次の表にリストされている順序でパラメータを入力します。パラメータ文ごとに新規行を開始します。
    パラメータ 説明
    SOURCEISTABLE

    Extractをソース表からレコードを直接抽出する初期ロード・プロセスとして指定します。

    SOURCEDB database USERID user id, PASSWORD password, BLOWFISH ENCRYPTKEY keyname

    データベース接続情報を指定します。

    • SOURCEDBでは、ソース・データベースの名前を指定します。

    • USERIDでは、Extractデータベース・ユーザー・プロファイルを指定します。

    • PASSWORDでは、ENCRYPT PASSWORDコマンドで暗号化されたユーザーのパスワード(「ExtractおよびReplicatのパスワードの暗号化」を参照)を指定します。PASSWORDキーワードの後に、暗号化されたパスワードを入力するか、貼り付けます。

    • BLOWFISH ENCRYPTKEY keynameでは、ローカルENCKEYSファイルの参照キーの名前を指定します。

    RMTHOST hostname, MGRPORT portnumber,[encryption options]
    • RMTHOSTでは、ターゲット・システムの名前またはIPアドレスを指定します。

    • MGRPORTでは、ターゲットでManagerが実行されるポートの番号を指定します。

    • encryption optionsでは、TCP/IPでのデータの暗号化(オプション)を指定します。

    その他のオプションおよび暗号化の詳細は、Oracle GoldenGate Oracle GoldenGateリファレンスfor Windows and UNIXを参照してください。

    ENCRYPTTRAIL BLOWFISH KEYNAME keyname

    Blowfish暗号化でリモート・ファイルを暗号化します。セキュリティの詳細は、『Oracle GoldenGateの管理for Windows and UNIX』を参照してください。

    RMTFILE path name,
    [MEGABYTES n]
    
    • path nameは、ファイルの相対名または完全修飾名です。

    • MEGABYTESでは、各ファイルのサイズを指定します。

    ロード・データを書き込むリモート・ファイルを指定します。Oracle GoldenGateでは、ロード中にこのファイルが作成されます。

    ノート: 抽出ファイルのサイズの上限は2GBです。

    TABLE owner.table;
    
    • ownerは、ライブラリ名またはスキーマ名です。

    • tableは、表の名前またはワイルドカードを使用して定義された表のグループです。ワイルドカード指定から表を除外するには、TABLEEXCLUDEパラメータを使用します。

    初期データ抽出の対象となるソース表を指定します。

  4. Oracle GoldenGateリファレンスfor Windows and UNIXにリストされているExtractの適切なオプション・パラメータを入力します。
  5. パラメータ・ファイルを保存して閉じます。
  6. ターゲット・システムで、次のコマンドを発行して初期ロードReplicatのパラメータ・ファイルを作成します。このReplicatには、トランザクション・データを適用するReplicatグループとは異なる名前が必要です。
    EDIT PARAMS initial-load Replicat name
    
  7. 表7-1にリストされている順序でパラメータを入力します。パラメータ文ごとに新規行を開始します。

    表7-1 ファイルからReplicatにデータをロードするための初期ロードReplicatパラメータ

    パラメータ 説明
    SPECIALRUN

    初期ロードReplicatをチェックポイントを使用しない1回かぎりの実行として実装します。

    END RUNTIME

    ロードの完了時に終了するように初期ロードReplicatに指示します。

    TARGETDB database, USERID user id, PASSWORD pw, algorithm ENCRYPTKEY keyname

    データベース接続情報を指定します。

    • TARGETDBでは、WindowsまたはLinuxシステム上のODBCインタフェースを介してDB2 for iターゲット・データベースに定義されているデータ・ソース名を指定します。

    • USERIDでは、Replicatデータベース・ユーザー・プロファイルを指定します。

    • PASSWORDでは、ENCRYPT PASSWORDコマンドで暗号化されたユーザーのパスワード(「ExtractおよびReplicatのパスワードの暗号化」を参照)を指定します。PASSWORDキーワードの後に、暗号化されたパスワードを入力するか、貼り付けます。

    • algorithm ENCRYPTKEY keynameでは、ENCRYPT PASSWORDコマンドで指定された暗号化方法とキー名を指定します。

    DECRYPTTRAIL BLOWFISH KEYNAME keyname

    入力証跡を復号化します。BLOWFISHは、DB2 for iのファイルの暗号化をサポートしているアルゴリズムであるため、必須です。

    EXTFILE path name |
    EXTTRAIL path name
    • path nameは、ファイルまたは証跡の相対名または完全修飾名です。

    • EXTTRAILは、Extractのパラメータ・ファイルでRMTFILEパラメータのMAXFILESオプションを使用している場合にのみ使用します。

    ExtractパラメータのRMTFILEで指定されている入力抽出ファイルを指定します。

    SOURCEDEFS file name |
    ASSUMETARGETDEFS
    • SOURCEDEFSは、ソース表とターゲット表に異なる定義が含まれる場合に使用します。DEFGENユーティリティによって生成されたソース定義ファイルの相対名または完全修飾名を指定します。

    • ASSUMETARGETDEFSは、ソース表とターゲット表に同じ定義が含まれる場合に使用します。

    データ定義の解釈方法を指定します。

    MAP owner.table,
    TARGET owner.table;
    • ownerはスキーマ名です。

    • tableは、表の名前または複数の表に対するワイルドカード定義です。ワイルドカード指定から表を除外するには、MAPEXCLUDEパラメータを使用します。

    ソース表とターゲット表の関係を指定します。

  8. Oracle GoldenGateリファレンスfor Windows and UNIXにリストされているReplicatの適切なオプション・パラメータを入力します。
  9. ファイルを保存して閉じます。

データベース・ユーティリティによる初期ロードの構成

initsync_copyutil.jpgの説明が続きます。
図initsync_copyutil.jpgの説明

この図は、初期ロードとロード期間中の進行中のトランザクション変更の取得およびレプリケーションの並列フローを示しています。コピー・ユーティリティにより、データはファイルに書き込まれ、そのファイルはターゲットにロードされます。一方、Extractプロセスでは、変更データを取得し、Replicatで読み取ってターゲットに適用するターゲットの証跡に送信します。

DB2 for iのソース・システムとターゲット・システムの二者間で初期ロードを行う場合、DB2 for iシステムのユーティリティを使用してターゲット・データを構築できます。これを行うには、SAVOBJまたはSAVLIBコマンドを使用してターゲットにロードするファイルを保存した後、RSTOBJまたはRSTLIBコマンドを使用してターゲットでリストアします。

もう1つの方法は、DB2 for iコマンドのCPYTOIMPF (インポート・ファイルにコピー)およびCPYFRMIMPF (インポート・ファイルからコピー)を使用して、他のデータベースのバルク・ロード・ユーティリティで使用できるファイルを作成します。詳細は、DB2 for iインフォメーション・センターのドキュメントの異なるシステム間でのコピーに関する項を参照してください。

どちらの場合も、Oracle GoldenGate初期ロード・プロセスに特別な構成を必要としません。「DB2 for iのためのOracle GoldenGateの構成」で構成した変更同期プロセス・グループを使用します。コピーを作成してロードしている間に、変更同期Extractグループを起動して進行中のデータ変更を抽出します。コピーが終了したら、変更同期Replicatグループを起動して、コピーの適用中に変更された行を再同期します。これ以降、ExtractとReplicatの両方が継続的に実行され、データ同期が維持されます。「変更取得プロセスと変更配信プロセスの追加」を参照してください。

変更取得プロセスと変更配信プロセスの追加

ノート:

初期ロードおよび変更取得を開始する準備が完了した時点、またはその直前に、次のステップを実行します。

次のステップでは、「DB2 for iのためのOracle GoldenGateの構成」で構成したOracle GoldenGate Extract、データ・ポンプおよびReplicatの各プロセスを設定します。"変更同期"プロセスと総称されるこれらのプロセスでは、次のことを行います。

  • ターゲットでロードが実行されている間に、進行中のソース変更を取得して適用します。

  • 発生したコリジョンを調整します。

ノート:

できるだけ初期ロード・プロセスの開始予定の直前に、次のステップを実行します。これらのプロセスは、初期ロード・ステップ中に開始します。

プライマリExtractの追加

次のステップでは、変更データをキャプチャするプライマリExtractを追加します。

プライマリExtractの開始点について

プライマリExtractグループを追加するときに、データ取得の最初の開始位置を確定します。この最初の位置は、次のいずれかに基づいくトランザクション境界でもかまいません。

  • タイムスタンプ

  • ジャーナルの最後

  • 特定のシステム順序番号

  • 特定のジャーナル順序番号(ジャーナル別)

使用可能なオプションの前提は、グローバル開始点およびオプションのジャーナル固有の開始点です。

  • タイムスタンプによってジャーナルの最後またはシステム順序番号に位置を指定する場合は、適切なオプションを指定してADD EXTRACTコマンドを使用します。このコマンドはすべてのジャーナルに対してグローバル開始点を確定するため、必須の最初のステップです。

  • ADD EXTRACTコマンドの発行後、必要に応じて、適切なジャーナル・オプションを指定したALTER EXTRACTコマンドを使用して、特定のジャーナル順序番号に特定のジャーナルの位置を指定できます。

必須およびオプションのExtractの開始点の確定

このステップでは、ADD EXTRACTおよびALTER EXTRACTコマンドを使用して、必要な開始点を確定しています。

  1. GGSCIを実行します。
  2. ADD EXTRACTコマンドを発行し、プライマリExtractグループを追加してグローバル開始点を確定します。
    ADD EXTRACT group name, TRANLOG
    {
    , BEGIN {NOW | yyyy-mm-dd[hh:mi:[ss[.cccccc]]]} |
    , EOF |
    , SEQNO seqno
    }
    

    説明:

    • group nameは、トランザクション変更を取得するプライマリExtractグループの名前です。

    • TRANLOGでは、ジャーナルをデータ・ソースとして指定します。

    • BEGINでは、指定の時間にデータの取得を開始することを指定します。2つのオプションのいずれかを選択します。NOWは、BEGINが発行された同じ時間のタイムスタンプが押された1件目のレコードから開始します。yyyy-mm-dd[hh:mi:[ss[.cccccc]]]は、明示されたタイムスタンプから開始します。このタイムスタンプからログが使用可能になります。

    • SEQNO seqnoでは、システム順序番号(最大20桁の10進数)から、またはその直後からデータの取得を開始することを指定します。

  3. (オプション)次のコマンドを発行し、ADD EXTRACT開始位置を変更して同じExtract構成の特定のジャーナルの開始位置に設定します。ALTER EXTRACTで設定された特定のジャーナル位置は、ADD EXTRACTまたはALTER EXTRACTですでに設定されたグローバル位置に影響しません。ただし、ALTER EXTRACTで設定されたグローバル位置は、同じExtract構成ですでに設定された特定のジャーナル位置よりも優先されます。
    ALTER EXTRACT group name,
    {
    ALTER EXTRACT {BEGIN {NOW | yyyy-mm-dd [hh:mi:[ss[.cccccc]]] [JOURNAL journal_library/journal_name [[JRNRCV receiver_library/receiver_name]] | 
    , EOF [JOURNAL journal_library/journal_name [[JRNRCV receiver_library/receiver_name]] |
    , SEQNO seqno [JOURNAL journal_library/journal_name [[JRNRCV receiver_library/receiver_name]]
    }

    ノート:

    SEQNOは、ALTER EXTRACTのジャーナルで使用する場合に、ジャーナル全体でグローバルであるシステム順序番号ではなく、特定のジャーナルに相対的なジャーナル順序番号です。

例7-1 タイムスタンプの開始点

ADD EXTRACT finance, TRANLOG, BEGIN 2011-01-01 12:00:00.000000

例7-2 NOWの開始点

ADD EXTRACT finance, TRANLOG, BEGIN NOW

例7-3 システム順序番号の開始点

ADD EXTRACT finance, TRANLOG, SEQNO 2952

例7-4 ジャーナルの開始点

ALTER EXTRACT finance, SEQNO 1234  JOURNAL accts/acctsjrn

例7-5 ジャーナルおよびレシーバの開始点

ALTER EXTRACT finance, SEQNO 1234 JOURNAL accts/acctsjrn JRNRCV accts/jrnrcv0005

ローカル証跡の追加

このステップでは、取得されたデータがプライマリExtractによって書き込まれるローカル証跡を追加します。

ソース・システムのGGSCIで、ADD EXTTRAILコマンドを発行します。

ADD EXTTRAIL pathname, EXTRACT group name

説明:

  • EXTTRAILでは、証跡がローカル・システムに作成されるよう指定します。

  • pathnameは、2文字の名前を含めた、証跡の相対名または完全修飾名です。

  • EXTRACT group nameは、プライマリExtractグループの名前です。

例7-6

ADD EXTTRAIL /ggs/dirdat/lt, EXTRACT finance

データ・ポンプExtractグループの追加

このステップでは、ローカル証跡を読み取り、データをターゲットに送信するデータ・ポンプを追加します。

ソース・システムのGGSCIで、ADD EXTRACTコマンドを発行します。

ADD EXTRACT group name, EXTTRAILSOURCE trail name

説明:

  • group nameは、データ・ポンプExtractグループの名前です。

  • EXTTRAILSOURCE trail nameは、ローカル証跡の相対名または完全修飾名です。

例7-7

ADD EXTRACT financep, EXTTRAILSOURCE c:\ggs\dirdat\lt

リモート証跡の追加

このステップでは、リモート証跡を追加します。Replicatによって準備されますが、この証跡はデータ・ポンプと関連付けられる必要があるため、ターゲットではなく、ソース・システムで追加される必要があります。

ソース・システムのGGSCIで、次のコマンドを発行します。

ADD RMTTRAIL pathname, EXTRACT group name

説明:

  • RMTTRAILでは、証跡がターゲット・システムに作成されることを指定します。pathnameは、2文字の名前を含めた、証跡の相対名または完全修飾名です。

  • EXTRACT group nameは、データ・ポンプExtractグループの名前です。

例7-8

ADD RMTTRAIL /ggs/dirdat/rt, EXTRACT financep

Replicatグループの追加

このステップでは、リモート証跡(ターゲットに自動的に作成)を読み取り、データ変更をターゲットOracleデータベースに適用するReplicatグループを追加します。

  1. ターゲット・システムでGGSCIを実行します。
  2. ADD REPLICATコマンドを発行します。

    ADD REPLICAT group name, EXTTRAIL pathname

    説明:

    • group nameは、Replicatグループの名前です。

    • EXTTRAIL pathnameは、2文字の名前を含めた、リモート証跡の相対名または完全修飾名です。

例7-9

ADD REPLICAT financer, EXTTRAIL c:\ggs\dirdat\rt

ターゲットのインスタンス化の実行

この手順では、ターゲット表のインスタンス化の間にOracle GoldenGateでソースの進行中のトランザクション変更をキャプチャし、ターゲットに適用されるまで格納します。ターゲット表のインスタンス化を実行するまでに、Oracle GoldenGate環境全体が変更のキャプチャと配信用に構成されている必要があります。Oracle GoldenGateを初期ロード・ユーティリティとして使用する場合は初期ロード・プロセスも同様です。

ファイルからReplicatへのインスタンス化を実行するには

  1. 「インスタンス化の前提条件」の要件に対応していることを確認します。

  2. ソース・システムとターゲット・システムで、GGSCIを実行してManagerプロセスを起動します。

    START MANAGER

  3. ソース・システムで、プライマリExtractグループとデータ・ポンプExtractグループを起動し、変更の抽出を開始します。

    START EXTRACT primary Extract group name
    START EXTRACT data pump Extract group name
    
  4. ソース・システムのOracle GoldenGateがインストールされているディレクトリから、次のようにして初期ロードExtractを起動します。

    $ /GGS directory/extract paramfile dirprm/initial-load Extract name.prm reportfile path name
    

    説明: initial-load Extract nameはパラメータ・ファイルの作成時に使用した初期ロードExtractの名前です。path nameはExtractレポート・ファイルの相対名または完全修飾名です(デフォルトでは、Oracle GoldenGateインストール・ディレクトリのdirrptサブディレクトリです)。

  5. オペレーティング・システムの標準的なファイル表示方法を使用してExtractレポート・ファイルを表示し、初期抽出の進行状況および結果を確認します。

  6. 初期抽出が終了するまで待機します。

  7. ターゲット・システムで、初期ロードReplicatを起動します。

    $ /GGS directory/replicat paramfile dirprm/initial-load Replicat name.prm reportfile path name
    

    説明: initial-load Replicat nameはパラメータ・ファイルの作成時に使用した初期ロードReplicatの名前です。path nameはReplicatレポート・ファイルの相対名または完全修飾名です(デフォルトでは、Oracle GoldenGateインストール・ディレクトリのdirrptサブディレクトリです)。

  8. 初期ロードReplicatの実行が終了したら、オペレーティング・システムの標準的なファイル表示方法を使用してReplicatレポート・ファイルを表示し、結果を確認します。

  9. ターゲット・システムで、変更のレプリケーションを開始します。

    START REPLICAT Replicat group name
    
  10. ターゲット・システムで、次のコマンドを発行して変更のレプリケーションのステータスを確認します。

    INFO REPLICAT Replicat group name
    
  11. 初期ロード中に生成されたすべての変更データがReplicatにより適用されたことを確認するまで、INFO REPLICATコマンドを発行し続けます。たとえば、初期ロードExtractが12:05に停止した場合、Replicatによってその時刻までデータが適用されていることを確認します。

  12. ターゲット・システムで、次のコマンドを発行してHANDLECOLLISIONSパラメータをオフにし、初期ロードのエラー処理を無効化します。

    SEND REPLICAT Replicat group name, NOHANDLECOLLISIONS
    
  13. ターゲット・システムで、Replicatのパラメータ・ファイルを編集してHANDLECOLLISIONSパラメータを削除します。これによって、次回Replicatが起動したときにHANDLECOLLISIONSが再度有効化されることを防止します。

    注意:

    ローカル・オペレーティング・システムのものとは異なる文字セットを使用した既存のパラメータ・ファイル(CHARSETオプションを使用して別の文字セットを指定したファイルなど)は、VIEW PARAMSコマンドまたはEDIT PARAMSコマンドを使用して表示や編集を行わないでください。そのようなパラメータ・ファイルはGGSCIの外部から表示してください。そうしないと、内容が破損する可能性があります。

  14. パラメータ・ファイルを保存して閉じます。

    これ以降、Oracle GoldenGateでデータ変更の同期が続けられます。

データベース・ユーティリティによるインスタンス化を実行するには

  1. 「インスタンス化の前提条件」の要件に対応していることを確認します。

  2. ソース・システムとターゲット・システムで、GGSCIを実行してManagerプロセスを起動します。

    START MANAGER
    
  3. ソース・システムで、プライマリExtractグループとデータ・ポンプExtractグループを起動し、変更の抽出を開始します。

    START EXTRACT primary Extract group name
    START EXTRACT data pump Extract group name
    
  4. ソース・システムで、コピーの作成を開始します。

  5. コピーが終了するまで待機し、完了した時刻を記録します。

  6. Replicatのパラメータ・ファイルを表示して、HANDLECOLLISIONSパラメータがリストされていることを確認します。そうされていない場合は、ファイルを編集してパラメータをファイルに追加します。

    EDIT PARAMS Replicat group name

    ノート:

    ローカル・オペレーティング・システムのものとは異なる文字セットを使用した既存のパラメータ・ファイル(CHARSETオプションを使用して別の文字セットを指定したファイルなど)は、VIEW PARAMSコマンドまたはEDIT PARAMSコマンドを使用して表示や編集を行わないでください。そのようなパラメータ・ファイルはGGSCIの外部から表示してください。そうしないと、内容が破損する可能性があります。

  7. ターゲット・システムで、変更のレプリケーションを開始します。

    START REPLICAT Replicat group name
    
  8. ターゲット・システムで、次のコマンドを発行して変更のレプリケーションのステータスを確認します。

    INFO REPLICAT Replicat group name
    
  9. 初期ロード中に生成されたすべての変更データが変更のレプリケーションにより適用されたことを確認するまで、INFO REPLICATコマンドを発行し続けます。前に記録した完了時刻を参照してください。たとえば、コピーが12:05に停止した場合、変更のレプリケーションによってその時刻までデータが適用されていることを確認します。

  10. ターゲット・システムで、次のコマンドを発行してHANDLECOLLISIONSパラメータをオフにし、初期ロードのエラー処理を無効化します。

    SEND REPLICAT Replicat group name, NOHANDLECOLLISIONS
    
  11. ターゲット・システムで、Replicatのパラメータ・ファイルを編集してHANDLECOLLISIONSパラメータを削除します。これによって、次回Replicatが起動したときにHANDLECOLLISIONSが再度有効化されることを防止します。

    注意:

    ローカル・オペレーティング・システムのものとは異なる文字セットを使用した既存のパラメータ・ファイル(CHARSETオプションを使用して別の文字セットを指定したファイルなど)は、VIEW PARAMSコマンドまたはEDIT PARAMSコマンドを使用して表示や編集を行わないでください。そのようなパラメータ・ファイルはGGSCIの外部から表示してください。そうしないと、内容が破損する可能性があります。

  12. パラメータ・ファイルを保存して閉じます。

    これ以降、Oracle GoldenGateでデータ変更の同期が続けられます。

インスタンス化後の処理の監視

ターゲットをインスタンス化し、レプリケーションが有効になったら、ステータス、ラグおよびレプリケーション環境の全体的な状態を表示して、プロセスが適切に実行され、Oracle GoldenGateエラー・ログに警告がなく、ラグが許容レベルであることを確認する必要があります。Oracle GoldenGateプロセスは、次の場所から表示できます。

  • GGSCI: プロセスの監視の詳細は、『Oracle GoldenGateの管理for Windows and UNIX』を参照してください。

  • Oracle GoldenGate Monitor: 製品の管理ドキュメントおよびオンライン・ヘルプを参照してください。Oracle GoldenGate Monitorでは、すべてのOracle GoldenGateインスタンスをグラフィックベースで監視する環境を提供します。

また、Oracle GoldenGate構成のすべての表について取得および配信が実行されていることと、ソースとターゲットのデータが同期していることを確認する必要もあります。このために、Oracle GoldenGate Veridata製品を使用できます。

Oracle GoldenGate環境のバックアップ

Oracle GoldenGateの処理を開始したら、障害に備えて処理の状態を残しておく上で、効果的なバックアップ・ルーチンが不可欠です。Oracle GoldenGateの作業ファイルをリストアできない場合、レプリケーション環境全体を再インスタンス化し、初期ロードを新たに完了する必要があります。

ベスト・プラクティスとして、バックアップ・ルーチンにOracle GoldenGateホーム・インストール全体を含めます。このディレクトリには、重要なサブディレクトリ、ファイルおよびプログラムが格納されます。このディレクトリの最も重要な作業ファイルがバックアップ領域の大半を占めるため、高速で簡単なリカバリのために、単純にインストール・ディレクトリ全体をバックアップすることは理にかなっています。

起動後のExtractの位置指定

Extractの実行中ある時点で、データ・ストリーム内のExtractの位置を手動で設定する必要が生じることがあります。Extractの位置を再設定するには、GGSCIでALTER EXTRACTコマンドを使用します。任意のExtractの読取り位置の特定には、INFO EXTRACTコマンドで、ジャーナル・レシーバ情報を含め、Extract構成の各ジャーナルの位置を表示すると便利です。これらのコマンドの詳細は、Oracle GoldenGateリファレンスfor Windows and UNIXを参照してください。

ノート:

ジャーナル間でトランザクションが分割される可能性があるため、システム順序番号による抽出ではすべてのジャーナルの同期が取られるので、任意のジャーナルの位置が単独で過去に再設定された場合、項目の再処理によるレイテンシが原因で、遅行しているジャーナルの読取りが追いつくまで、すでに読み取られたジャーナルがストールします。