この章では、vericom
コマンドライン・インタフェースを使用して比較を実行する方法について説明します。
この章の内容は次のとおりです。
Oracle GoldenGate Veridataのvericom
ツールを使用して、オペレーティング・システムのコマンド・シェルから特定の比較ジョブを実行できます。vericom
ツールはOracle GoldenGate Veridataコマンドライン・インタフェースを実行し、これらのアクティビティの自動化プログラムによる処理を可能にします。
次のジョブを実行できます。
ジョブ全体またはジョブの特定の比較ペアの実行
注意: グループは個別に実行できません。 |
トレースの設定 (Oracleサポート・アナリストのガイダンスがある場合のみ)
特定の比較ペアの場合は、次のジョブを実行できます。
以前の非同期結果の確認
以前の実行からの非同期XMLの生成
Webインタフェースから可能な同じプロファイル設定および行パーティションの上書き
比較は、Oracle GoldenGate Veridata Webインタフェースからも実行できます。このインタフェースは、比較するオブジェクトの構成およびランタイム・パラメータの設定制御において優れた機能を発揮します。
vericom
プログラムは、これを実行するための正しいオペレーティング・システムの権限を有するユーザーは誰でも実行できます。
Oracle GoldenGate Veridataがインストールされているシステムで、オペレーティング・システムのコマンド・シェルを実行します。
VERIDATA_DOMAIN_HOME
/veridata/bin
ディレクトリに移動します。
次の構文を使用して、vericom
プログラムを実行します。
構文
vericom{.bat|.sh} required_parameter [optional_parameter]
必須パラメータ
次のいずれかは必須です。入力しないとエラーが返されます。オプションを1つのみ入力します。
[-wlport port ] | -wluser user_name | -help | -helprun | [-version | -v] | [-job | -j] job |
-wluser
は、WebLogic Serverに接続するためのWebLogic Serverユーザー名を指定します。このWebLogic Serverユーザーには、コマンドライン操作にアクセスして実行するためのveridataCommandLineUser
権限が必要です。このユーザーには、ジョブを正常に実行し、Veridataスクリプト・ツールを使用するためのveridataAdministrator
またはveridataPowerUser
権限も必要です。
2.4項「ユーザー・ロールの定義によるOracle GoldenGate Veridataへのアクセスの保護」を参照してください。
-version
、-v
、-help
または-helprun
を指定すると、指定した他のフラグより優先されます。
オプションのパラメータ
これらはオプションのパラメータです。
[ -g group -c compare_pair ] [ -nw ] [ -rP profile ] [ -rR ] | -rO ] [ -rN threads ] [ -rD seconds ] [ -rC | +rC ] [ -rOb | -rOx | -rO2 | -rO0 ] [ -rOs records ] [ -rTi ] [ -rTc ] [ -rTs trace_number ] [ -pS source_partition_name | -pSq source_sql_predicate | -pSA1 source_ascii_start_key | -pSA2 source_ascii_end_key | -pSH1 source_hex_start_key | -pSH2 source_hex_end_key ] [ -pT target_partition_name | -pTq target_sql_predicate | -pTA1 target_ascii_start_key | -pTA2 target_ascii_end_key | -pTH1 target_hex_start_key | -pTH2 target_hex_end_key ] [ -pq sql_predicate ] [ -rd0 | -rdN run_ID ] [ -wp ]
表4-1 Vericomランタイム引数
引数 | 説明 |
---|---|
-wluser |
サーバーを認証して接続するWebLogic Serverユーザー名を指定します。 |
-wlport |
WebLogic Serverのポート番号を指定します。 |
-help |
|
-helprun |
実行関連の構文コンポーネントとその説明を表示します。 |
{-version | -v} |
使用中のOracle GoldenGate Veridataコマンドライン・インタフェースのバージョンを表示します。 |
{-job | -j} job
|
実行するジョブを指定します。 |
-g group -c compare_pair |
グループと比較ペアを指定します。
|
-nw |
|
-rP profile
|
ジョブに定義されたプロファイルを上書きします。
|
-rR |
実行上書きオプション。非同期ファイルに格納された情報に基づき、前の実行で非同期であった行のみ比較します。結果では、レプリケーションまたは別のメソッドで同期に戻された行が識別されます。
|
-rO |
実行上書きオプション。前回の実行からの非同期ファイルに基づき
|
-rN threads
|
使用する同時比較スレッド数を指定します。サーバー上のプロセッサ数と同じスレッド数を使用できます。このオプションは、デフォルトのジョブ・プロファイルを上書きし、 |
-rD seconds
|
レプリケーション遅延を考慮して指定した秒数だけ確認手順を遅らせます。確認手順を遅らせると、更新済みソース値のレプリケーションが間に合わなかったために発生する非同期結果のFalse数が減ります。このオプションはデフォルトのジョブ・プロファイルを上書きし、 |
-rC | +rC |
確認手順(OOSの確認)をジョブで実行するかどうかを制御します。
これらのオプションはデフォルトのジョブ・プロファイルを上書きし、相互に排他的です。 |
-rOb | -rOx | -rO2 | -rO0 |
これらのオプションはデフォルトのジョブ・プロファイルを上書きし、相互に排他的です。 |
-rOs records
|
OOSXMLファイルのチャンクに書込まれる非同期 |
-rTi |
初回比較手順に対するOracle GoldenGate Veridataエージェントのトレースをオンに設定します。Oracleサポート・アナリストのガイダンスなしで使用しないでください。 |
-rTc |
確認手順に対するOracle GoldenGate Veridataエージェントのトレースをオンに設定します。Oracleサポート・アナリストのガイダンスなしで使用しないでください。 |
-rTs trace_number
|
Oracle GoldenGate Veridataサーバーに対するトレースをオンに設定します。 |
-pS source_partition_name | -pSq source_sql_predicate | -pSA1 source_ascii_start_key | -pSA2 source_ascii_end_key | -pSH1 source_hex_start_key | -pSH2 source_hex_end_key |
既存のソース行パーティションまたはパーティション基準で定義されたパーティションの上書きを使用して実行します。これらのオプションは相互に排他的です。1つの比較ペアを比較( - すでに定義されリポジトリに格納されている既存のソース・パーティションを指定します。パーティション名は検証されず、Veridata サーバーに直接渡されます。指定したパーティションがない場合はエラーが発生します。 - SQL表の既存のソース・パーティションを上書きするパーティションを定義するSQL述部を指定します。述部とは 述部に複数のワードが含まれる場合は、引用符で囲んで単一コマンド引数にする必要があります。引用符のタイプは使用中のコマンド・シェルまたはインタプリタに依存します。 述部に特殊文字(sh/cshの ASCIIキーを、Enscribeファイルの既存のソース・パーティションを上書きするパーティションの開始キー値として指定します。
ASCIIキーを、Enscribeファイルの既存のソース・パーティションを上書きするパーティションの終了キー値として指定します。
16進数キーを、Enscribeファイルの既存のソース・パーティションを上書きするパーティションの開始キー値として指定します。
16進数キーを、Enscribeファイルの既存のソース・パーティションを上書きするパーティションの終了キー値として指定します。 |
-pT target_partition_name| -pTq target_sql_predicate | -pTA1 target_ascii_start_key | -pTA2 target_ascii_end_key | -pTH1 target_hex_start_key | -pTH2 target_hex_end_key |
これらのオプションはターゲット・パーティションを指定し、ソース・パーティションを指定する対応するオプションと同じ規則に従います。 |
-pq sql_predicate
|
既存のパーティションの上書きとして、ソースおよびターゲットの両方のSQL表に使用するSQL述部を指定します。このオプションは、 |
-rd0 | -rdN run_ID
|
このオプションはNonStop SQL/MPおよびEnscribeでのみ有効です。比較ペアのデルタ処理を制御します。
これらのオプションを使用するには、次で比較ペアを指定する必要があります。
|
-wp seconds
|
ジョブが完了するまで待機します。クライアントは、指定した間隔(秒単位)で、サーバーに送信されたジョブのステータスもポーリングします。
|
Vericomは、次のいずれかのステータスで終了します。ここで示す例は、UNIXまたはLinuxシステムに対するものです。
ステータス | 説明 |
---|---|
0 |
コマンドが正常に実行されました。ジョブが実行された場合は、すべての行は同期で終了しました。
|
1 |
無効なvericom 構文を使用しました。たとえば、次の構文は無効です。
|
3 |
比較を実行したフラグを含む入力エラーの細分性を上げてください。たとえば、次のような誤りがこのエラーを引き起こします。
前述の例では、
前述の例では、デルタ処理が比較ペア・レベルで適用されるため、 |
4 |
ジョブは正常に実行されましたが、同期以外の何かの比較ステータスの行がありました。 |
5 |
Oracle GoldenGate Veridataサーバーで通信エラーが発生しました。 |
vericom
で実行する比較結果を表示する場合は、Oracle GoldenGate Veridata Webを使用して比較レポート(1.4項「比較結果の表示」を参照)を表示でき、vericom
が端末に返した出力を表示できます。実行が正常に終了すると、ジョブの統計が表示されます。
次の例は、-w
を指定しない場合のTestJob
のWindowsシステム上での実行を示しています。プロセスはステータス0で終了し、終了済みジョブの統計は表示されません。
VERIDATA_DOMAIN_HOME\veridata\bin\vericom.bat -j TestJob
Connecting to: localhost:9177
Run ID: (2256, 0, 0)
C:\veridata\server\bin> if errorlevel 0 echo EXITED 0 STATUS
EXITED 0 STATUS
次の例は、-w
を指定した場合のTestJob
の実行を示しています。比較ペアの1つに検証エラーがあったため、プロセスはステータス4で終了します。終了済みジョブは表示されます。
VERIDATA_DOMAIN_HOME\veridata\bin\vericom.bat -j TestJob -w
Connecting to: localhost:9177
Run ID: (2257, 0, 0)
Job Start Time: 2008-03-21 22:48:05
Job Stop Time: 2008-03-21 22:48:20
Job Report Filename: C:\testjunit\rpt\TestJob\00002257\TestJob.rpt
Number of Compare Pairs: 3
Number of Compare Pairs With Errors: 1
Number of Compare Pairs With OOS: 1
Number of Compare Pairs With No OOS: 1
Number of Compare Pairs Cancelled: 0
Job Completion Status: WITH ERRORS
C:\veridata\server\bin> if errorlevel 4 echo EXITED 4 STATUS
EXITED 4 STATUS
次の例は、-w
を指定した場合のジョブTestJob
の比較ペアTABLE9=TABLE9
の実行を示しています。表が同期であるため、プロセスはステータス0で終了します。終了済みジョブは表示されます。
VERIDATA_DOMAIN_HOME\veridata\bin\vericom.bat -j TestJob -g TestGroup -c TABLE9=TABLE9 -w
Connecting to: localhost:9177
Run ID: (2258, 0, 0)
Job Start Time: 2008-03-21 22:51:08
Job Stop Time: 2008-03-21 22:51:11
Job Report Filename: C:\veridata\data\rpt\TestJob\00002258\TestJob.rpt
Number of Compare Pairs: 1
Number of Compare Pairs With Errors: 0
Number of Compare Pairs With OOS: 0
Number of Compare Pairs With No OOS: 1
Number of Compare Pairs Cancelled: 0
Compare Pair Report Filename: C:\veridata\data\rpt\TestJob\00002258\TestGroup\CP_ TABLE9=TABLE9.rpt
Number of Rows Compared: 21
Number of Rows In Sync: 21
Number of Rows With Errors: 0
Number of Rows Out Of Sync: 0
Number of Inserts Out Of Sync: 0
Number of Deletes Out Of Sync: 0
Number of Updates Out Of Sync: 0
Compare Pair OOSXML Directory: C:\veridata\data\oosxml\TestJob\00002258\TestGroup
Compare Pair OOSXML Filename:
Job Completion Status: IN SYNC
C:\veridata\server\bin> if errorlevel 0 echo EXITED 0 STATUS
EXITED 0 STATUS
UNIXシステムでは、SH
またはKSH
シェルを使用中の場合、以前に実行したコマンドの終了ステータスは特別な変数'$?'
にあります。CSH
シェルを使用中の場合、以前に実行したコマンドの終了ステータスは特別な変数'$status
'に格納されています。