14 Oracle GoldenGateレプリケーションのインスタンス化

この章では、レプリケーション環境のインスタンス化を構成および実行し、複数のデータベース間で同期状態を確立し、維持する方法について説明します。同期状態では、データをターゲット・オブジェクトに適用する前にデータで変換が実行されたかどうかによって、ソースおよびターゲット・オブジェクトに同じ値またはほぼ一致する値が含まれます。

内容は次のとおりです。

インスタンス化プロセスの概要

インスタンス化手順では、ソース・データのコピーを作成し、そのコピーをターゲット・データベースにロードします。

初期ロードではデータのポイントインタイム・スナップショットがキャプチャされます。Oracle GoldenGateでは、静的データのロード時に発生したトランザクション変更が適用され、その整合性が保たれます。インスタンス化の完了後、Oracle GoldenGateでは進行中のトランザクション変更の間、同期状態が保持されます。

Oracle GoldenGate処理をインスタンス化する場合、本番マシンにライブをデプロイする前にまずテスト環境でテストすることをお薦めします。これは、信頼できるソースのデータがレプリケーション・プロセスからアクセスされる可能性のあるアクティブ/アクティブまたは高可用性の構成で特に重要です。テストによって、ターゲットでの再ロードや他のトラブルシューティング・アクティビティのためにユーザー・アクティビティを中断することなく、構成の誤りやデータの問題を検出して解決できます。テストによって、インスタンス化プロセスが適切に構成されたことも保証されます。テストに成功した後、パラメータ・ファイルを本番装置にコピーし、本番データを使用して予測可能なインスタンス化を実行できます。

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

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

変更同期グループの構成および追加

ターゲット・データベースおよびレプリケーション環境のインスタンス化を実行するには、オンライン変更キャプチャおよび適用グループが存在し、適切に構成されている必要があります。次を参照してください。

DDL処理の無効化

インスタンス化を実行する前に、DDLアクティビティを無効化する必要があります。インスタンス化の終了後、DDLを再開できます。手順は、「DDL処理の一時的な無効化」を参照してください。

コリジョン処理の追加

この前提条件は、次のインスタンス化方法に適用されます。

この前提条件は、「Oracle Data Pumpを使用したロードの構成」に説明されているインスタンス化方法には適用されません

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

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

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

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

インスタンス化手順の最後に(手順で尋ねられたときに)、ReplicatパラメータからHANDLECOLLISIONSを削除する必要があります。HANDLECOLLISIONSの詳細は、『Oracle GoldenGateリファレンス』を参照してください。

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

ターゲット表の準備

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

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

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

初期ロードの構成

Oracle GoldenGateでは、この項に示された次のロード方式が特にOracle Database用としてサポートされます。

方法を選択してその構成手順に従い、ロード・プロセスとパラメータ・ファイルを作成します。パラメータ・ファイルを操作する場合は、『Oracle GoldenGateの管理』Oracle GoldenGateパラメータ・ファイルの使用に関する項を参照してください。

Oracle Data Pumpを使用したロードの構成

この方法では、Oracle Data Pumpユーティリティを使用して、ターゲット・データを構築します。コピーが停止したときのSCNで、Extract、データ・ポンプおよびReplicatを起動します。コピーに含まれているトランザクションは、整合性違反によるコリジョンを回避するためにスキップされます。プロセスの開始地点から、Oracle GoldenGateはデータ同期を維持します。

この方法では、初期ロードOracle GoldenGateプロセスは不要です。

SQL*Loaderへダイレクト・バルク・ロードするための構成

次の図に、SQL*Loaderへダイレクト・バルク・ロードするための構成を示します。

この方法では、Oracle GoldenGate初期ロードExtractを構成して実行し、全ソース・レコードを抽出して初期ロードReplicatタスクに直接送信します。初期ロードReplicatタスクはSQL*Loaderと通信し、ダイレクトパス・バルク・ロードでデータをロードします。データ・マッピングと変換は、初期ロードExtractまたは初期ロードReplicat、あるいはその両方で行えます。ロード時、「統合モードでのキャプチャの構成」または「クラシック・モードでのキャプチャの構成」および「Oracle GoldenGateの適用の構成」で構成した変更同期グループによって増分変更がレプリケートされ、ロードの結果に反映されます。

制限事項:

  • この方法では、LOBまたはLONGのデータの抽出はサポートされません。かわりの方法については、「入力ファイルからSQL*Loaderへのインスタンス化の実行」を参照してください。

  • この方法では、サイズに関係なく、LOBを含むマテリアライズド・ビューはサポートされません。データの暗号化もサポートされません。

SQL*Loaderへダイレクト・バルク・ロードするための構成手順

  1. LOCK ANY TABLEをターゲットOracle DatabaseのReplicatデータベース・ユーザーに付与します。
  2. ソースおよびターゲット・システムでGGSCIを実行します。
  3. 両方のシステムでManagerを起動します。
    START MANAGER
    
  4. ソース・システムで、初期ロードExtractを作成します。
    ADD EXTRACT initial-load_Extract, SOURCEISTABLE
    

    説明:

    • initial-load_Extractは、8文字以内の初期ロードExtractの名前です。

    • SOURCEISTABLEでは、Extractに全レコードをソース表から直接読み取るように指示します。

  5. ソース・システムで、初期ロードExtractパラメータ・ファイルを作成します。
    EDIT PARAMS initial-load_Extract
    
  6. 次に示す順序で初期ロードExtractパラメータを入力します。パラメータ文ごとに新しい行を開始します。次の例は、マルチテナント・コンテナ・データベースに関連付けられている3つの部分からなる表名を示しています。
    EXTRACT initext
    USERIDALIAS tiger1
    RMTHOST fin1, MGRPORT 7809 ENCRYPT AES192, KEYNAME securekey2
    RMTTASK replicat, GROUP initrep
    TABLE hq.hr.*;
    パラメータ 説明

    EXTRACT initial-load_Extract

    ADD EXTRACTで指定した初期ロードExtractの名前を指定します。『Oracle GoldenGateリファレンス』を参照してください。

    USERIDALIAS alias

    Extractに割り当てられているデータベース・ログイン資格証明のエイリアスを指定します。この資格証明は、Oracle GoldenGate資格証明ストアに存在する必要があります。詳細は、「Oracle GoldenGate資格証明の確立」を参照してください

    RMTHOST hostname, MGRPORT portnumber[, ENCRYPT algorithm KEYNAME keyname]

    ターゲット・システム、Managerが稼働しているポート、およびTCP/IP経由でのデータ暗号化(オプション)を指定します。『Oracle GoldenGateリファレンス』を参照してください。

    RMTTASK REPLICAT, GROUP initial-load_Replicat

    プロセス・タイプ(REPLICAT)と初期ロードReplicatの名前を指定します。ターゲット・システムのManagerに、初期ロードReplicatを1回かぎりのタスクとして動的に起動するように指示します。『Oracle GoldenGateリファレンス』を参照してください。

    TABLE [container.]schema.table;

    キャプチャする表を指定します。

    • マルチテナント・コンテナ・データベースの場合、containerはプラガブル・データベースの名前です。3つの部分からなる名前を使用するかわりに、SOURCECATALOGパラメータを使用してデフォルトのプラガブル・データベースを指定できます。

    • schemaは、スキーマ名です。

    • tableは、表名です。

    オブジェクト名の指定に関する重要情報は、『Oracle GoldenGateの管理』を参照してください。

  7. ファイルを保存して閉じます。
  8. ターゲット・システムで、初期ロードReplicatを作成します。
    ADD REPLICAT initial-load Replicat, SPECIALRUN
    

    説明:

    • initial-load Replicatは、初期ロードReplicatタスクの名前です。

    • SPECIALRUNでは、初期ロードReplicatを、継続的プロセスではなく、ワンタイム・タスクとして識別します。

  9. ターゲット・システムで、初期ロードReplicatパラメータ・ファイルを作成します。
    EDIT PARAMS initial-load Replicat
    
  10. 次に示す順序で初期ロードReplicatパラメータを入力します。パラメータ文ごとに新しい行を開始します。次の例は、マルチテナント・コンテナ・データベースに関連付けられている3つの部分からなるソース表名を示しています。
    REPLICAT initrep
    USERIDALIAS tiger2
    BULKLOAD
    ASSUMETARGETDEFS
    MAP hq.hr.*, TARGET hr2.*;
    
    パラメータ 説明

    REPLICAT initial-load Replicat

    ADD REPLICATで指定した初期ロードReplicatタスクの名前を指定します。『Oracle GoldenGateリファレンス』を参照してください。

    USERIDALIAS alias

    Replicatに割り当てられているデータベース・ログイン資格証明のエイリアスを指定します。この資格証明は、Oracle GoldenGate資格証明ストアに存在する必要があります。詳細は、「Oracle GoldenGate資格証明の確立」を参照してください

    BULKLOAD

    Oracle SQL*Loaderインタフェースと直接対話するようReplicatに指示します。『Oracle GoldenGateリファレンス』を参照してください

    ASSUMETARGETDEFS

    ソースとターゲットの表が、セマンティクスを含めて同一であるものとします。ソースとターゲットの定義が異なる場合、変更同期と初期ロードの両方のプロセスが使用するソース定義ファイルを作成して指定する必要があります。『Oracle GoldenGateリファレンス』を参照してください。

    データ定義ファイルの詳細は、『Oracle GoldenGateの管理』を参照してください。

    MAP [container.]schema.table, TARGET schema.table;

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

    • ソースがマルチテナント・コンテナ・データベースの場合、containerはこのMAP 文で指定されたソース・オブジェクトを含むプラガブル・データベースの名前です。3つの部分からなる名前を使用するかわりに、SOURCECATALOGパラメータを使用してデフォルトのソース・プラガブル・データベースを指定できます。

    • schemaは、スキーマ名です。

    • tableは、表名です。

    オブジェクト名の指定に関する重要情報は、『Oracle GoldenGateの管理』を参照してください。

入力ファイルからSQL*Loaderへのロードの構成

この方法では、初期ロードExtractはソース表からソース・レコードを抽出し、抽出ファイルに外部ASCII形式で書き込みます。ファイルはSQL*Loaderによって読み取られます。ロード時、第4章で構成した変更同期グループによって増分変更がレプリケートされ、ロードの結果に反映されます。ロード処理の一環として、Oracle GoldenGateで初期ロードReplicatを使用して、データベース・ユーティリティに必要な実行ファイルと制御ファイルを作成します。制御ファイルは動的に生成され、変換ルールで事前構成できないため、すべてのデータ変換はソース・システムで初期ロードExtractによって実行される必要があります。

ファイルからSQL*Loaderへのロードを構成する手順

  1. ソースおよびターゲット・システムでGGSCIを実行します。
  2. 両方のシステムでManagerを起動します。
    START MANAGER
    
  3. ソース・システムで、初期ロードExtractパラメータ・ファイルを作成します。
    EDIT PARAMS initial-load Extract
    
  4. 次に示す順序で初期ロードExtractパラメータを入力します。パラメータ文ごとに新しい行を開始します。次の例は、マルチテナント・コンテナ・データベースに関連付けられている3つの部分からなる表名を示しています。
    SOURCEISTABLE
    USERIDALIAS tiger1
    RMTHOST fin1, MGRPORT 7809 ENCRYPT AES192, KEYNAME securekey2
    ENCRYPTTRAIL AES192
    FORMATASCII, SQLLOADER
    RMTFILE /ggs/dirdat/ie
    TABLE hq.hr.*;
     
    パラメータ 説明

    SOURCEISTABLE

    ソース表から直接レコードを抽出する初期ロード・プロセスとしてExtractを指定します(『Oracle GoldenGateリファレンス』を参照)。

    USERIDALIAS alias

    Extractに割り当てられているデータベース・ログイン資格証明のエイリアスを指定します。この資格証明は、Oracle GoldenGate資格証明ストアに存在している必要があります(「Oracle GoldenGate資格証明の確立」を参照)

    RMTHOST hostname, MGRPORT portnumber[, ENCRYPT algorithm KEYNAME keyname]

    ターゲット・システム、Managerが稼働しているポート、およびTCP/IP経由でのデータ暗号化(オプション)を指定します(『Oracle GoldenGateリファレンス』を参照)。

    ENCRYPTTRAIL algorithm

    リモート・ファイルでデータを暗号化します。詳細は、『Oracle GoldenGateリファレンス』を参照してください。

    FORMATASCII, SQLLOADER

    SQL*Loaderに対応した、固定長でASCII形式のリモート・ファイルを作成します。このパラメータは、RMTFILEの前にリストする必要があります。『Oracle GoldenGateリファレンス』を参照してください。

    RMTFILE path

    Extractによって作成され、ロード・データが書き込まれる抽出ファイルの絶対パスまたはフルパス名を指定します。『Oracle GoldenGateリファレンス』を参照してください。

    TABLE [container.]schema.table;

    キャプチャする表を指定します。

    • マルチテナント・コンテナ・データベースの場合、containerはプラガブル・データベースの名前です。3つの部分からなる名前を使用するかわりに、SOURCECATALOGパラメータを使用してデフォルトのプラガブル・データベースを指定できます。

    • schemaは、スキーマ名です。

    • tableは、表名です。

    オブジェクト名の指定に関する重要情報は、『Oracle GoldenGateの管理』を参照してください。

  5. パラメータ・ファイルを保存して閉じます。
  6. ターゲット・システムで、初期ロードReplicatパラメータ・ファイルを作成します。
    EDIT PARAMS initial-load Replicat
    
  7. 次に示す順序で初期ロードReplicatパラメータを入力します。パラメータ文ごとに新しい行を開始します。次の例は、マルチテナント・コンテナ・データベースに関連付けられている3つの部分からなるソース表名を示しています。
    GENLOADFILES sqlldr.tpl 
    USERIDALIAS tiger2
    EXTFILE /ggs/dirdat/ie
    ASSUMETARGETDEFS
    MAP hq.hr.*, TARGET hr2.*;
     
    パラメータ 説明

    GENLOADFILES template

    データベース・ユーティリティの実行ファイルと制御ファイルを生成します。『Oracle GoldenGateリファレンス』を参照してください。

    USERIDALIAS alias

    Replicatに割り当てられているユーザーのデータベース・ログイン資格証明のエイリアスを指定します。この資格証明は、Oracle GoldenGate資格証明ストアに存在している必要があります(「Oracle GoldenGate資格証明の確立」を参照)

    EXTFILE path

    ExtractパラメータRMTFILEで指定した抽出ファイルを指定します。『Oracle GoldenGateリファレンス』を参照してください。

    ASSUMETARGETDEFS

    ソースとターゲットの表が、セマンティクスを含めて同一であるものとします。ソースとターゲットの定義が異なる場合、変更同期と初期ロードの両方のプロセスが使用するソース定義ファイルを作成して指定する必要があります。『Oracle GoldenGateリファレンス』を参照してください。

    データ定義ファイルの詳細は、『Oracle GoldenGateの管理』を参照してください。

    MAP [container.]schema.table, TARGET schema.table;

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

    • ソースがマルチテナント・コンテナ・データベースの場合、containerはこのMAP 文で指定されたソース・オブジェクトを含むプラガブル・データベースの名前です。3つの部分からなる名前を使用するかわりに、SOURCECATALOGパラメータを使用してデフォルトのソース・プラガブル・データベースを指定できます。

    • schemaは、スキーマ名です。

    • tableは、表名です。

    オブジェクト名の指定に関する重要情報は、『Oracle GoldenGateの管理』を参照してください。

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

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

この手順では、ターゲット表のインスタンス化の間にOracle GoldenGateでソースの進行中のトランザクション変更をキャプチャし、ターゲットに適用されるまで格納します。

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

注意:

Extractが新しいOracle GoldenGate構成で初めて起動されたとき、開いているソース・トランザクションはスキップされます。Extractの起動後に開始されたトランザクションのみキャプチャされます。

Oracle Data Pumpを使用したインスタンス化の実行

Oracle Data Pumpでインスタンス化を実行するには、My Oracle Supportドキュメント1276058.1を参照してください。このドキュメントを入手するには、次のようにします。

  1. http://support.oracle.comに移動します。
  2. 「Sign In」の下部から言語を選択し、Oracleシングル・サインオン(SSO)でログインします。
  3. 「Dashboard」で、見出し「Knowledge Base」を展開します。
  4. 「Enter search terms」の下の箇所で、ドキュメントID「1276058.1」を貼り付けるか入力し、「Search」をクリックします。
  5. 検索結果で「Oracle GoldenGate Best Practices: Instantiation from an Oracle Source Database [Article ID 1276058.1]」を選択します。
  6. 「Attachments」の下のリンクをクリックして、記事を開きます。

SQL*Loaderへのダイレクト・バルク・ロードを使用する場合のインスタンス化の実行

  1. ソース・システムで、GGSCIを実行します。
  2. プライマリ変更キャプチャExtractグループを起動します。
    START EXTRACT group
    
  3. データ・ポンプExtractグループを起動します。
    START EXTRACT data_pump
    
  4. 順序値をレプリケートする場合、次のようにします。
    • update.Sequenceに対してEXECUTE権限を持つ資格証明ストア内のユーザーのエイリアスで、DBLOGINコマンドを発行します。

      DBLOGIN USERIDALIAS alias
      
    • 次のコマンドを発行して、各ソース順序を更新し、REDOを生成します。このREDOから、Replicatがターゲット上の順序の初期同期を実行します。このコマンドの詳細は、『Oracle GoldenGateリファレンス』を参照してください。

      FLUSH SEQUENCE [container.]schema.sequence
      
  5. 初期ロードExtractを起動します。
    START EXTRACT initial-load_Extract
    

    警告:

    初期ロードReplicatは起動しないでください。Managerプロセスで自動的に起動し、ロードの完了時に終了します。

  6. ターゲット・システムでGGSCIを実行します。
  7. VIEW REPORTコマンドを発行し、SQL*Loaderへの初期ロードがいつ完了したかを確認します。
    VIEW REPORT initial-load_Extract
    
  8. ロードが完了したら、変更データReplicatグループを起動します。
    START REPLICAT group
    
  9. INFO REPLICATコマンドを発行します。初期ロード中に生成された変更データをReplicatですべて適用したと表示されるまで、コマンドの発行を続けます。たとえば、初期ロードExtractが12:05に停止した場合、Replicatがその時間までのデータを適用したことを確認します。
    INFO REPLICAT group
    
  10. 変更配信ReplicatのHANDLECOLLISIONSをオフにし、初期ロードのエラー処理を無効にします。
    SEND REPLICAT group, NOHANDLECOLLISIONS
    
  11. 変更配信Replicatパラメータ・ファイルを編集し、HANDLECOLLISIONSパラメータを削除します。
    EDIT PARAMS group
    
  12. パラメータ・ファイルを保存して閉じます。

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

入力ファイルからSQL*Loaderへのインスタンス化の実行

注意:

データにマルチバイト文字がある場合、特にオペレーティング・システムのキャラクタ・セットがデータベースのキャラクタ・セットと異なる場合、SQL*Loader方法は推奨されません。

  1. ソース・システムで、GGSCIを実行します。
  2. プライマリ変更キャプチャExtractグループを起動します。
    START EXTRACT group
    
  3. データ・ポンプExtractグループを起動します。

    START EXTRACT data_pump

  4. 順序値をレプリケートする場合、次のようにします。
    • update.Sequenceに対してEXECUTE権限を持つ資格証明ストア内のユーザーのエイリアスで、DBLOGINコマンドを発行します。

      DBLOGIN USERIDALIAS alias
      
    • 次のコマンドを発行して、各ソース順序を更新し、REDOを生成します。このREDOから、Replicatがターゲット上の順序の初期同期を実行します。このコマンドの詳細は、『Oracle GoldenGateリファレンス』を参照してください。

      FLUSH SEQUENCE [container.]schema.sequence
      
  5. ソース・システムのOracle GoldenGateのインストール・ディレクトリで、オペレーティング・システムのコマンドライン(GGSCIではない)から初期ロードExtractを起動します。

    UNIXおよびLinux:

    $ /OGG_directory/extract paramfile dirprm/initial-load_Extract.prm reportfile path
    

    Windows:

    C:\> OGG_directory\extract paramfile dirprm\initial-load_Extract.prm reportfile path
    

    説明: initial-load_Extractは、初期ロードExtractの名前で、pathは、Extractレポート・ファイルが作成される場所の相対パスまたは完全修飾パスです。

  6. ソースからの初期抽出が完了するまで待ちます。コマンドラインからExtractレポート・ファイルを表示し、進捗と結果を確認します。
  7. ターゲット・システムで、初期ロードReplicatを起動します。

    UNIXおよびLinux:

    $ /OGG directory/replicat paramfile dirprm/initial-load_Replicat name.prm reportfile path
    

    Windows:

    C:\> OGG directory\replicat paramfile dirprm\initial-load_Replicat.prm reportfile path
    

    説明: initial-load Extractは、初期ロードReplicatの名前で、pathは、Replicatレポート・ファイルが作成される場所の相対パスまたは完全修飾パスです。

  8. 初期ロードReplicatが停止したら、コマンドラインからReplicatレポート・ファイルを表示し、結果を確認します。
  9. ASCII形式のファイルおよび初期ロードReplicatが作成した実行ファイルと制御ファイルを使用し、SQL*Loaderを介してデータをロードします。
  10. ロードが完了したら、変更配信Replicatグループを起動します。
    START REPLICAT group
    
  11. INFO REPLICATコマンドを発行します。初期ロード中に生成された変更データをReplicatですべて適用したと表示されるまで、コマンドの発行を続けます。たとえば、初期ロードExtractが12:05に停止した場合、Replicatがその時間までのデータを適用したことを確認します。
    INFO REPLICAT group
    
  12. 変更配信ReplicatのHANDLECOLLISIONSをオフにし、初期ロードのエラー処理を無効にします。
    SEND REPLICAT group, NOHANDLECOLLISIONS
    
  13. 変更配信Replicatパラメータ・ファイルを編集し、HANDLECOLLISIONSパラメータを削除します。
    EDIT PARAMS group
    
  14. パラメータ・ファイルを保存して閉じます。

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

インスタンス化後の処理の監視および制御

ターゲットをインスタンス化し、レプリケーションが有効になったら、プロセスを制御し、レプリケーション環境の全体的な正常性を確認することができます。

Replicatを統合モードで構成した場合は、STATS REPLICATコマンドを使用し、直接適用モードで適用されたトランザクション数と比較した、統合モードで適用されたトランザクション数に関する統計を確認できます。

STATS REPLICAT group

このコマンドの出力によって、適用されたトランザクションの数、直接適用にリダイレクトされたトランザクションの数、直接トランザクション比率などの統計が示されます。この統計値により、統合Replicatが意図したとおりに実行されているかどうかを判断できます。環境に問題がなく、直接適用操作率が高い場合は、非統合Replicatの使用を検討します。統合Replicatで並列度を構成できます。

注意:

統計値を現実的なものにするために、適用統計を表示するのは、Oracle GoldenGate環境が適切に確立され、構成エラーが解決され、予期された処理エラーが適切に処理されたことが確認された後にしてください。

インバウンド・サーバー・コンポーネントごとに、V$ビューで統合Replicatの実行時統計を確認することもできます(『Oracle Databaseリファレンス』を参照)。

  • リーダー統計はV$GG_APPLY_READERに記録され、読込みメッセージ数、使用されたメモリー、依存性カウントに関する統計が含められます。

  • 適用コーディネータ統計はV$GG_APPLY_COORDINATORに記録され、トランザクションレベルで統計値が記録されます。

  • 適用サーバー統計は、V$GG_APPLY_SERVERに記録されます。このビューでは、適用サーバーの各プロセスの情報(parallelismおよびmax_parallelismパラメータで制御された)が別個の行に記録されます。各適用サーバーの統計は、SERVER_ID列で識別されます。0SERVER_IDが存在する場合、ワークロードが引き下げられたために適用サーバーの集計が終了したことを示します。

  • データベースがReplicatから受信したメッセージ数に関する統計は、V$GG_APPLY_RECEIVER表に記録されます。

プロセスを制御する場合は、『Oracle GoldenGateの管理』Oracle GoldenGateプロセスの制御に関する項を参照してください。

すべてのプロセスが正常に実行され、エラーがエラー処理ルールに従って処理されることを確認するには、『Oracle GoldenGateの管理』処理エラーへの対処に関する項を参照してください。Oracle GoldenGateには、プロセスのステータス、ラグ、警告およびその他の情報を表示するコマンドやログが用意されています。

次のビューの問合せの詳細は、『Oracle Databaseリファレンス』を参照してください。

  • V$GOLDENGATE_TABLE_STATS: インバウンド・サーバーで処理された、レプリケートされた各表で発生したDMLおよびコリジョンの統計を確認する場合。

  • V$GOLDENGATE_TRANSACTION: Oracle GoldenGateインバウンド・サーバーで処理されたトランザクションに関する情報を確認する場合。

同期の確認

ソース・データとターゲット・データが同期されていることを確認するために、Oracle GoldenGate Veridata製品または独自のスクリプトを使用し、ソース・データとターゲット・データを選択して比較できます。

Oracle GoldenGate環境のバックアップ

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

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