Oracle GoldenGate NonStop SQL/MPからOracle Databaseへの初期データ・ロード

概要

    目的

    このOracle-By-Example(OBE)では、2つの異種データベース(ここではHP NonStop SQL/MPからOracle 11g)間で同期を維持する方法について説明します。

    このチュートリアルで学習する内容は、次のとおりです。

    • Oracle GoldenGateプロセスを構成するための環境の準備
    • 初期データ・ロードの構成および実行
    • データベース操作の変更取得の構成および開始
    • Data PumpのExtractプロセスの構成および開始
    • データベース操作の変更配信の構成および開始

    所要時間

    約1時間

    はじめに

    Oracle GoldenGateを使用した監査対象NonStop SQL/MPからOracleデータベースへの同期:SQL*Loaderによる初期データ・ロードとData Pumpによるチェンジ・データ・キャプチャ(CDC)

    Oracle GoldenGateでは、1つまたは複数のターゲット・データベースに対してトランザクション・ログの読取りと変更の書込みを実行できるため、異種データベースのレプリケーションを非常に高速に実行できます。 一般的な環境では、次の5つのプロセスを使用します。

    Manager:
    ソース・ホスト上に1つのManagerが配置され、ターゲット・ホストには別のMangerが配置されます。 Managerはソース・インスタンスとターゲット・インスタンス上でその他のプロセスを開始および停止します。 ExtractまたはReplicatがいったん実行中になると、Managerがトラフィックを送信する必要はなくなります。
    Initial Load:
    オプション。 ターゲット表を1回移入するために使用します。 ソース表から直接読み取ることも、ASCIIファイルから読み取ることもできます。 このOBEでは、ソース表から直接読取りを行う初期ロードに焦点を合わせて説明します。
    Extract:
    トランザクション・データを取得するために証跡ファイルに対してソース上で実行します。 Extractには、Classic(このOBEで使用)とIntegratedという2つのバージョンがあります。
    Data Pump:
    オプションですが、強くお勧めします。 Data Pumpは、IPネットワーク経由でソース・インスタンスからターゲット・インスタンスに証跡ファイルを送信します。 技術的に言うと、Data PumpはセカンダリExtractです。 このOBEではData Pumpは使用しません。
    Replicat:
    ターゲット・データベースにデータを提供します。 通常、Replicatはターゲットで実行します。

    監査対象のNonStopからOracleへのData Pump構成

    この図は、プライマリのExtractプロセスを使用して、ローカル証跡を作成する構成を示しています。 この証跡ファイルはData PumpのExtractによって読み取られます。その後で、Extractによってターゲット上にリモート証跡が作成されます。 Replicatプロセスによって、リモート証跡からターゲットのデータベースへ変更が適用されます。

    環境の概要は次のとおりです。

    ホスト名 OS データベース ソース/ターゲット
    host01 HP NonStop ソース
    host02 Linux/UNIX/Windows Oracle 11g ターゲット

    前提条件

    ソースはHP NonStop上のSQL/MPデータベースであり、ターゲットはWindowsまたはUNIXプラットフォーム上のOracle 11gデータベースです。

    host01とhost02の2つのホストがあり、各ホストでOS、GGSCI、およびSQLの3つの環境プロンプトを使用します。 そのため、6つの異なる場所に入力します。 どのコマンドをどの場所に入力するのかに、特に注意してください。 誤ったコンテキストで誤ったコマンドを使用するのが、もっともよくある誤りです。

    タスクの概要

    環境の準備

    このOBEを実行するには、ソース・システムとターゲット・システムの両方にGoldenGateアプリケーションをインストールする必要があります。 インストールには、サンプル・データベースと、初期データおよび後続の更新処理を生成するスクリプトが含まれます。 ソース表とターゲット表は初期データと一緒に作成され、ロードされます。 また、GoldenGateのManagerプロセスが起動され、その他のプロセスを構成および開始できるようになります。

    初期のデータ・ロード

    異種データベース間で初めてデータをロードするには、GoldenGateアプリケーションを使用して初期データのロードを実行します。この処理中、アプリケーションは稼働を継続できます。 直接的な方法は、Extractを使用してソース・ファイルからデータを抽出し、ターゲット・システムのReplicatに直接データを送信する方法です。

    このOBEでは、Extractを使用して作成したASCIIファイルをターゲットに送信し、SQL*Loaderユーティリティでロードを実行します。

    変更取得(Extract)の構成

    監査の対象となる表に対してはExtractプロセスが構成され、変更データがTMF監査証跡から直接取得されて、GoldenGateのローカル証跡ファイルと呼ばれるデータ・キューに変更が格納されます。 Data PumpのExtractはローカル証跡を読み取り、ターゲット上のGoldenGateのリモート証跡にデータを送信します。

    変更配信(Replicat)の構成

    表に対するデータの初期ロードが完了し、Extractプロセスがすべての処理を取得し始めたら、Replicatプロセスを構成して、取得した処理をターゲット・データベースに配信します。

    表記規則

    指示と画面のテキストの色とフォントは、次のように解釈します。

    Some_Command
    コマンドまたは値として入力します。 例:
    ./ggsci と入力して、コマンドライン・インタプリタを開始します。
    Some_Prompt
    システムがプロンプトまたは応答としてこれに対応します。 例:
    ウェルカム・スプラッシュ・バナーの後、GGSCI (host01) 1>プロンプトでコマンドを入力できます。
    Some_Button
    画面に表示されるこのボタンをクリックします。 例:
    必要なバージョンを選択したら、「Continue」をクリックしてダウンロードを開始します。
    Some_Variable
    実際の値に置き換える変数。 例:
    プロンプトで、userid/passwordを入力します。
    Some_Filename
    ファイル名、パス、またはフォルダ/ディレクトリ。 例:
    /etcディレクトリのhostsファイルを編集します。
    Some_Code
    キーワードまたはコード要素。 例:
    初期ロードの後で、パラメータHandleCollisionsNoHandleCollisionsに変更します。

    ファイルとプロセスのネーミング規則

    ファイルとプロセスのネーミング規則が役立つことがあります。 次に、このOBEで使用している規則の例を示します。
      pxxxxhh.ext
    ここで、それぞれの変数は次のような意味を持ちます

    p=process=
    e(xtract)、p(ump)、r(eplicat)、i(nitial)、d(efgen)、s(tartup)。
    xxxx=project=
    共通のプロジェクトxxxxに関連するすべてのファイル。たとえば、hr、sales、engr、testなどがあります。
    hh=host-to-host=
    ソースとターゲットのホスト名で示され、a=host01およびb=host02の場合、aa、ab、ba、bb。 後で説明しますが、一部のファイル名には数字を含めることができないため、数字は使用しないことをお勧めします。
    ext=extension=
    prm=parameter(dirprm/に保存)、dsc=discard、rpt=report(dirrpt/に保存)、def=definition(dirdef/に保存)、oby=obey(インストール・ディレクトリに保存)、sql=SQL(dirsql/に保存)。

1. Oracle GoldenGateプロセスを構成するための環境の準備

    目的

    ここでの目的は次のとおりです。

    • Managerプロセスを構成および開始する
    • ソースおよびターゲットのサンプル・データベースを準備する
    • データ定義を生成し、ターゲット・システムへコピーする

    1.1 ソースのNSK環境の準備

      ソース上でGLOBALSパラメータ・ファイルを構成します。

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

      Host01 - HP NonStop
      TACL> VOLUME <install_vol>.<install_subvol>
      TACL> TEDIT GLOBALS
      
         ADD DEFINE =GGS_PREFIX, CLASS MAP, FILE $<prefix>  
                                                                                      
      

      GLOBALSパラメータを使用すると、1つのNSKノードに複数の環境が存在する場合も、それぞれのGoldenGateインスタンスを一意に特定できます。 ラボの準備で定義した2文字の接頭辞を使用します。

      ソース・システムでManagerプロセスを構成します。

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

      Host01 - HP NonStop
      TACL> VOLUME <install_vol>.<install_subvol>
      TACL> RUN GGSCI
      GGSCI> TEDIT PARAMS MGRPARM
      
         -- GoldenGate Manager Parameter file 
         TCPIPPROCESSNAME <tcpip_process>     
         PORT <port>                          
      
      GGSCI> START MANAGER, CPU 1, PRI 180
      
         (Verify the results:)
      
      GGSCI> INFO MANAGER
                                                                                      
      

      Managerプロセスは、その他すべてのGoldenGateプロセスを開始および監視する役割を果たします。 1つのGoldenGateインスタンスに存在するMangerプロセスは常に1つだけです。

      ソース・ファイルを作成してロードします。

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

      Host01 - HP NonStop
      TACL> SQLCI
      >> VOLUME <install_vol>.GGSSOU;
      >> CREATE CATALOG;
      >> OBEY <install_vol>.<install_subvol>.DEMOSQL;
      >> OBEY <install_vol>.<install_subvol>.DEMOLDS (INITIAL);
      
         (Verify the results:)
      
      >> SELECT * FROM TCUSTMER;
      >> SELECT * FROM TCUSTORD;
                                                                                      
      

      このインストールには、サンプル表を作成し、初期データを生成するためのスクリプトが含まれています。 この節で使用されているサブボリュームGGSSOUおよびGGSDEFのGGを<接頭辞>に置換することが必要になる場合があります。

      ソース定義を生成します。

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

      Host01 - HP NonStop
      TACL> VOLUME <install_vol>.<install_subvol>
      TACL> RUN DEFGEN
      
         (Within DEFGEN, the following prompts and replies are issued:)
      
      Enter definitions filename (or Exit):          <install_vol>.GGSDEF.TCUSTDEF
      File/Table to create definition for (or Exit): <install_vol>.GGSSOU.TCUSTMER
      Definition retrieved.
      File/Table to create definition for (or Exit): <install_vol>.GGSSOU.TCUSTORD
      Definition retrieved.
      File/Table to create definition for (or Exit): EXIT
                                                                                      
      

      DEFGENユーティリティは、レプリケート対象のファイル/表のレイアウトを記述したソース定義ファイルを生成するインタラクティブなプログラムです。

      ソース定義をターゲットに移動します。

      Host01 - HP NonStop
      [OS prompt] ftp ogg_user@target_host
      put filename.def
                                                                                      
      

      終了後、<install_vol>.GGSDEF.TCUSTDEFファイルをASCII形式で、ターゲットの<install_location>/dirdef/source.defにFTP送信します。

      ソース・レイアウトに基づいて、ターゲット・データベースのスクリプトを生成します。

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

      Host01 - HP NonStop
      TACL> VOLUME <install_vol>.<install_subvol>
      TACL> RUN DDLGEN
      
         (This initiates an interactive DDLGEN session with the 
               following prompts and replies:
      
      Enter definitions filename (or Exit):          <install_vol>.GGSDEF.TCUSTSQL
      DDL template file name (or Exit):              TMPLORA
      File/Table to create definition for (or Exit): <install_vol>.GGSSOU.TCUSTORD
      Definition retrieved.
      File/Table to create definition for (or Exit): <install_vol>.GGSSOU.TCUSTMER
      Definition retrieved.
      File/Table to create definition for (or Exit): EXIT
                                                                                      
      

      DDLGENはインタラクティブなプログラムであり、ソース・ファイル/表のレイアウトに基づいてターゲット・データベースに表を作成する文を含むスクリプトを生成します。

      スクリプトを移動します。

      Host01 - HP NonStop
      [OS prompt] ftp ogg_user@target_host
      put filename.sql
                                                                                      
      

      終了後、<install_vol>.GGSDEF.TCUSTSQLファイルをASCII形式で、ターゲット・ファイル<install_location>/dirsql/tcust.sqlにFTP送信します。

      以上で、ソースのNSK環境の準備は完了です。

    1.2 ターゲットのOracle環境の準備

      ターゲット・システムでManagerプロセスを構成します。

      ターゲット・システムで次のコマンドを実行します。

      Host02 - LUW Oracle 11g
         (Start the command interface:)
      
      Shell> cd <install_location> 
      Shell> ./ggsci 
      
         (Specify the port that the Manager should use:)
      
      GGSCI> EDIT PARAMS MGR 
         -- GoldenGate Manager Parameter file 
         PORT <port>                          
      
         (Start Manager:)
      
      GGSCI> START MANAGER 
      
         (Verify the results:)
      
      GGSCI> INFO MANAGER 
                                                                                      
      

      ManagerのSTATUSとしてRUNNINGと表示されているはずです。

      ターゲットのOracle表を作成します。

      ターゲット・システムで次のコマンドを実行し、表の作成スクリプトを実行します。

      Host02 - LUW Oracle 11g
      Shell> cd <install_location> 
      Shell> sqlplus <login>/<password> 
      SQL> @./dirsql/tcust.sql 
      
         (Verify the results:)
      
      SQL> describe tcustmer; 
      SQL> desc tcustord; 
      SQL> exit 
                                                                                      
      

      サンプルのTCUST*表が2つ存在しますが、中身は空です。

      以上で、ターゲットのOracle 環境の準備は完了です。

2. SQL*Loaderを使用した初期データ・ロードの構成および実行

    目的

    ここでの目的は次のとおりです。

    • 初期Extractを構成および実行して、デリミタ付きASCII入力ファイルを作成する
    • 初期Replicatを構成および実行して、SQL*Loaderの実行および制御ファイルを生成する
    • SQL*Loaderを実行してターゲット表へデータを移入する

    2.1 初期ロードの取得

      初期ロードのパラメータ・ファイルを作成します。

      ソース・システムで次のコマンドを実行し、ELOD<unique_id>という名前のExtractを構成します。 *

      Host01 - HP NonStop
      GGSCI> TEDIT PARAMS ELOD<unique_id> 
      
         --                                                                
         -- Initial Data Synchronization parameter file                    
         -- for TCUSTMER and TCUSTORD                                      
         --                                                                
         SOURCEISFILE, FASTUNLOADSHARED                                    
         FORMATASCII, SQLLOADER                                            
         RMTHOST <target>, MGRPORT <port>, PARAMS "-d ./dirdef/source.def" 
         RMTFILE ./dirdat/TCUSTMER.dat, PURGE                              
         TABLE <install_vol>.GGSSOU.TCUSTMER;                              
         RMTFILE ./dirdat/TCUSTORD.dat, PURGE                              
         TABLE <install_vol>.GGSSOU.TCUSTORD;                              
      
      GGSCI> EXIT 
                                                                                      
      

      * ラボで使用されるプロセス名(例:EINIBD)は次の要素で構成されています。
      1)GoldenGateのプロセスを示す1文字(EはExtract、RはReplicat)
      2)プロセスの種類を表す3~4文字(INIは初期データ・ロード、ORAはOracleデータベース・データの取得または配信など)
      3)一意の識別子を作成するための2文字(通常はユーザーのイニシャル、数字は不可)

      初期ロードの取得を実行します。

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

      Host01 - HP NonStop
      TACL> RUN EXTRACT /IN GGSPARM.ELOD<unique_id>,
       OUT $S.#GG.ELOD<unique_id>/ 
                                                                                      
      

      結果が成功したかどうかを確認します。

      以上で、初期ロードの取得は完了です。

    2.2 初期ロードの配信

      SQL*Loaderの実行および制御スクリプトを生成します。

      ターゲット・システムで次のコマンドを実行します。

      Host02 - LUW Oracle 11g
      Shell> cd /<install_location> 
      Shell> ./ggsci 
      GGSCI> EDIT PARAM GENLOAD 
      
         GENLOADFILES                                                          
         USERID <login>, PASSWORD <password>                                   
         SOURCEDEFS ./dirdef/source.def                                        
         MAP <install_vol>.GGSSOU.TCUSTMER, TARGET <owner/schema>.TCUSTMER;    
         MAP <install_vol>.GGSSOU.TCUSTORD, TARGET <owner/schema>.TCUSTORD;    
                                                                                      
      

      それぞれMAP文の末尾にセミコロンが付加されている点に注意します。

      配信を実行して、実行および制御スクリプトを生成します。

      ターゲット・システムで次のコマンドを実行します。

      Host02 - LUW Oracle 11g
      Shell> ./replicat paramfile dirprm/genload.prm 
                                                                                      
      

      必要に応じて、レポートをファイルに出力できます。

      以上で、初期ロードの配信は完了です。

    2.3 SQL*Loader

      SQL*Loaderユーティリティを使用して、フラット・ファイルからターゲット表へのロードを実行します。

      ターゲット・システムで次のコマンドを実行します。

      Host02 - LUW Oracle 11g
      Shell> TCUSTMER.run 
      Shell> TCUSTORD.run 
      
      Shell> cd <install_location> 
      Shell> sqlplus <login>/<password> 
      SQL> select * from tcustmer; 
      SQL> select * from tcustord; 
      SQL> exit
                                                                                      
      

      SQL*PlusでSELECT文を実行して、結果を確認します。

      以上で、SQL*Loaderの項は完了です。

3. Data Pumpを使用した、データベース操作に対する変更取得の構成および開始

    目的

    ここでの目的は次のとおりです。

    • 変更を取得するExtractプロセスを構成し、追加する
    • 変更を格納するローカル証跡を追加する
    • Data PumpのExtractを構成および追加して、ローカル証跡を読み取り、ターゲット上にリモート証跡を作成する
    • 2つのExtractプロセスを開始する

    3.1 プライマリExtractの設定

      Extractパラメータ・ファイルを作成します。

      ソース・システムで次のコマンドを実行し、ELOD<unique_id>という名前のExtractを定義します。このプロセスはTMF監査証跡からデータを抽出し、この変更をGoldenGateインスタンスにルーティングします。

      Host01 - HP NonStop
      GGSCI> EDIT PARAM ESQL<unique_id> 
      
         --                                                    
         -- Change Capture parameter file to capture           
         -- TCUSTMER and TCUSTORD Changes                      
         --                                                    
         EXTRACT ESQL<unique_id>                               
         EXTTRAIL <install_vol>.GGSDAT.<local_trail>           
         TABLE <install_vol>.GGSSOU.TCUSTMER;                  
         TABLE <install_vol>.GGSSOU.TCUSTORD;                  
                                                                                      
      

      注: <local_trail>に使用した2文字を書き留めます:_____。 この情報は、Replicatが読み取るリモート証跡を定義および作成するData PumpのExtractを設定します。

      Extractグループを追加します。

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

      Host01 - HP NonStop
      GGSCI> ADD EXTRACT ESQL<unique_id>, BEGIN NOW, CPU 1, PRI 160
      
         (Verify the results:)
      
      GGSCI> INFO EXTRACT ESQL<unique_id> 
                                                                                      
      

      デフォルトのCPUは、Managerが稼働するCPUです。

      GoldenGateのローカル証跡を定義します。

      ソース・システムで次のコマンドを実行して、ExtractパラメータESQL<unique_id>で宣言された証跡を追加します。 これはソース・システムに配置されます。

      Host01 - HP NonStop
      GGSCI> ADD EXTTRAIL <install_vol>.GGSDAT.<local_trail>,
             EXTRACT ESQL<unique_id>, MEGABYTES 5 
                                                                                      
      

      以上で、プライマリExtractの構成は完了です。

    3.2 Data Pumpの構成

      Data Pumpのパラメータ・ファイルを作成します。

      ソース・システムで次のコマンドを実行し、EPMP<unique_id>という名前のData Pump Extractを定義します。これはGoldenGate証跡からデータを抽出し、この変更をターゲット上のリモートGoldenGateにルーティングします。

      Host01 - HP NonStop
      GGSCI> EDIT PARAM EPMP<unique_id> 
      
         --                                            
         -- Data Pump parameter file to read the local 
         -- trail of TCUSTMER and TCUSTORD Changes     
         --                                            
         EXTRACT EPMP<unique_id>                       
         TCPIPPROCESSNAME <tcpip_process>              
         PASSTHRU                                      
         RMTHOST <target>, MGRPORT <port>              
         RMTTRAIL ./dirdat/<remote_trail>              
         TABLE <install_vol>.GGSSOU.TCUSTMER;          
         TABLE <install_vol>.GGSSOU.TCUSTORD;          
                                                                                      
      

      注: <local_trail>に使用した2文字を書き留めます:_____。 この情報は、Replicatが読み取るリモート証跡を定義する際に必要になります。

      Data PumpのExtractグループを追加します。

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

      Host01 - HP NonStop
      GGSCI> ADD EXTRACT EPMP<unique_id>, EXTTRAILSOURCE 
             <install_vol>.GGSDAT.<local_trail> 
      
         (Verify the results:)
      
      GGSCI> INFO EXTRACT EPMP<unique_id> 
                                                                                      
      

      Oracle GoldenGateのリモート証跡を定義します。

      ソース・システムで次のコマンドを実行して、ExtractパラメータEPMP<unique_id>で宣言された証跡を追加します。 この証跡はターゲット・システムに配置されます。

      Host01 - HP NonStop
      GGSCI> ADD RMTTRAIL ./dirdat/<remote_trail>, EXTRACT EPMP<unique_id>,
             MEGABYTES 5 
                                                                                      
      

      以上で、Data Pumpの構成は完了です。

    3.3 Extractプロセスの開始

      プライマリのExtractプロセスを開始します。

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

      Host01 - HP NonStop
      GGSCI> START EXTRACT ESQL<unique_id> 
      
         (Verify the results:)
      
      GGSCI> INFO EXTRACT ESQL<unique_id> 
      GGSCI> VIEW REPORT EXTRACT ESQL<unique_id> 
                                                                                      
      

      プロセスのSTATUSRUNNINGになっているはずです。

      Data PumpのExtractプロセスを開始します。

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

      Host01 - HP NonStop
      GGSCI> START EXTRACT EPMP<unique_id> 
      
         (Verify the results:)
      
      GGSCI> INFO EXTRACT EPMP<unique_id> 
      GGSCI> VIEW REPORT EXTRACT EPMP<unique_id> 
                                                                                      
      

      以上で、Extractプロセスの開始は完了です。

    3.4 ディスカッション・ポイント(オプション)

      PASSTHRUの使用

      PASSTHRUパラメータはどのような役割を果たしますか。





      Extractのローカル証跡の識別

      Data PumpはExtractとReplicatの間でデータを移動します。 どのような方法で認識して、トランザクション・ログではなくExtractのローカル証跡を読み取っているのでしょうか。





      リモート・システムの特定

      リモートのターゲット・システムを特定するために使用されているパラメータはどれでしょうか。





      Data Pumpの利点

      リモート・システムの更新時にData Pumpを使用する利点を挙げてください。





4. 変更配信(Replicat)の構成

    目的

    ここでの目的は次のとおりです。

    • ターゲット・システム上にチェックポイント表を設定する
    • Replicatプロセスとチェックポイント表を含む名前付きグループを作成する
    • パラメータを追加してReplicatグループを構成する
    • Replicatグループを開始する

    4.1. チェックポイント表の設定

      ターゲット・システム上にGLOBALSファイルを作成します。

      ターゲット・システムで次のコマンドを実行します。

      GLOBALSパラメータ・ファイルを作成して編集し、チェックポイント表を追加します。

      Host02 - LUW Oracle 11g
      Shell> cd <install_location> 
      Shell> ./ggsci 
      GGSCI> EDIT PARAMS ./GLOBALS 
      
         CHECKPOINTTABLE <owner/schema>.ggschkpt 
                                                                                      
      

      チェックポイント表の所有者と名前を書き留め、ファイルを保存してから閉じます。

      表の所有者____________________名前____________________

      注: 表には任意の名前を付けることができますが、OBEの目的上、ここではggschkptを使用します。

      GLOBALSファイルがGoldenGateのルート・ディレクトリに作成されていることを確認し、ファイル拡張子が追加されている場合はこれを削除します。

      GLOBALSパラメータを有効化します。

      GLOBALSの構成を有効にするには、変更を実施したセッションを終了する必要があります。 次のコマンドを実行してGGSCIを終了します。

      Host02 - LUW Oracle 11g
      GGSCI> EXIT 
                                                                                      
      

      Replicatのチェックポイント表を追加します。

      ターゲット・システムで次のコマンドを実行します。

      Host02 - LUW Oracle 11g
      Shell> cd <install_location> 
      Shell> ./ggsci 
      GGSCI> DBLOGIN USERID <login>, PASSWORD <password>  
      GGSCI> ADD CHECKPOINTTABLE 
                                                                                      
      

      以上で、チェックポイント表の設定は完了です。

    4.2 変更配信の構成

      Replicatグループを追加します。

      ターゲット・システムで次のコマンドを実行し、RORA<unique_id>という名前の配信グループを追加します。

      Host02 - LUW Oracle 11g
      GGSCI> ADD REPLICAT RORA<unique_id>, EXTTRAIL ./dirdat/<trail_id> 
                                                                                      
      

      注: Extractの設定を参照して、2文字の正しい<trail_id>(前半のステップでは<remote_trail>と呼ばれています)を確認します。

      Replicatパラメータ・ファイルを作成します。

      ターゲット・システムで次のコマンドを実行し、パラメータ・ファイルをエディタで開きます。

      Host02 - LUW Oracle 11g
      GGSCI> EDIT PARAM RORA<unique_id> 
      
         (Type in the following parameters:)
      
         --                                                                  
         -- Change Delivery parameter file to apply                          
         -- TCUSTMER and TCUSTORD Changes                                    
         --                                                                  
         REPLICAT RORA<unique_id>                                            
         USERID <login>, PASSWORD <password>                                 
         HANDLECOLLISIONS                                                    
         SOURCEDEFS ./dirdef/source.def                                      
         DISCARDFILE ./dirrpt/RORA<unique_id>.DSC, PURGE                     
         MAP <source_vol>.GGSSOU.TCUSTMER, TARGET <owner/schema>.tcustmer;   
         MAP <source_vol>.GGSSOU.TCUSTORD, TARGET <owner/schema>.tcustord;   
                                                                                      
      

      Replicatプロセスを開始します。

      ターゲット・システムで次のコマンドを実行します。

      Host02 - LUW Oracle 11g
      GGSCI> START REPLICAT RORA<unique_id> 
      
         (Verify the results:)
      
      GGSCI> INFO REPLICAT RORA<unique_id> 
                                                                                      
      

      以上で、変更配信(Replicat)の構成は完了です。

    4.3 ディスカッション・ポイント(オプション)

      HANDLECOLLISIONSを使用するタイミング

      GoldenGate処理(変更取得、初期データ・ロード、変更配信)のどの段階で、HANDLECOLLISIONSを使用しますか。 また、どのような効果がありますか。





      SOURCEDEFSによって提供される情報はどのようなものですか。





      DISCARDFILEの目的は何ですか。





5. アクティビティの生成と結果の検証

    目的

    ここでの目的は次のとおりです。

    • ソース・システムでさまざまな更新、挿入、削除処理を実行する
    • ターゲットに対する変更の配信を確認する
    • 初期ロードで使用されたエラー処理を無効化する

    5.1 データベース操作の生成

      さまざまな更新、挿入、削除処理を実行します。

      Host01 - HP NonStop
      TACL> SQLCI 
      >> VOLUME <install_vol>.GGSSOU; 
      >> O <install_vol>.<install_subvol>.DEMOLDS (UPDATE); 
                                                                                      
      

    5.2 変更の取得および配信の検証

      ソース・システムで結果を検証します。

      Host01 - HP NonStop
      >>  SELECT * FROM TCUSTMER; 
      >>  SELECT * FROM TCUSTORD; 
      >>  EXIT; 
                                                                                      
      

      ターゲット・システムで結果を確認して、ターゲット・データを検証します。

      Host02 - LUW Oracle 11g
      Shell> cd <install_location> 
      Shell> sqlplus <userid>/<password> 
      
      SQL> select * from tcustmer; 
      SQL> select * from tcustord; 
      SQL> exit 
      
      Shell> ./ggsci 
      
      GGSCI> SEND REPLICAT RORA<unique_id>, REPORT 
      GGSCI> VIEW REPORT RORA<unique_id> 
                                                                                      
      

    5.3 エラー処理の無効化

      実行中の配信プロセスに対して、初期ロードのエラー処理を無効化します。

      Host02 - LUW Oracle 11g
      GGSCI> SEND REPLICAT RORA<unique_id>, NOHANDLECOLLISIONS 
                                                                                      
      

      パラメータ・ファイルから初期ロードのエラー処理を削除します。

      Host02 - LUW Oracle 11g
      GGSCI> EDIT PARAMS RORA<unique_id> 
                                                                                      
      

      HANDLECOLLISIONSパラメータを削除します。

      ここまでで、エラー処理の無効化は完了しました。

    以上で、アクティビティの生成は完了です。

まとめ

    Oracle GoldenGateを使用すると、このサンプル演習で行ったよりもさらに多くのことを実行できます。

    このチュートリアルで学習した内容は、次のとおりです。

    • 表の初期ロードに対して、ExtractプロセスとReplicatプロセスを構成および開始する
    • サンプル・データを生成してレプリケーションの有効性をテストする
    • プロセスで生成されるレポートを管理する

    参考資料

    このチュートリアルのトピックに関連するヘルプ・トピック

    著者

    • カリキュラム開発責任者: Steve Friedberg
    • 共著者: Doug Reid、Chris Lawless

このOracle by Exampleをナビゲートする際、以下の機能を使用できます。

ヘッダー・ボタンの非表示:
ヘッダー内のボタンを非表示にするには、タイトルをクリックします。 ボタンを再表示するには、もう一度タイトルをクリックします。
トピック一覧ボタン:
すべてのトピックの一覧です。 いずれかのトピックをクリックすると、その項に移動します。
すべてのトピックを開く/閉じる:
すべての項に対する詳細を表示または非表示にします。 デフォルトでは、すべてのトピックが閉じられています。
すべてのイメージを表示/非表示:
すべてのスクリーンショットを表示または非表示にします。 デフォルトでは、すべてのイメージが表示されています。
印刷:
コンテンツを印刷します。 現在表示または非表示にされているコンテンツが印刷されます。

このチュートリアルの特定の項に移動するには、一覧からトピックを選択してください。