ヘッダーをスキップ
Oracle® GoldenGate Veridata管理者ガイド
11gリリース2 (11.2.1.0.0)
B71707-01
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

10 コマンドラインからの比較の実行

この章では、vericomコマンドライン・インタフェースを使用して比較を実行する方法について説明します。

この章の内容は次のとおりです。


10.1項「コマンドライン・インタフェースの概要」
10.2項「vericomの実行」
10.3項「Vericom終了ステータス」
10.4項「Vericom出力例」

10.1 コマンドライン・インタフェースの概要

Oracle GoldenGate Veridataのvericomツールを使用して、オペレーティング・システムのコマンド・シェルから特定の比較ジョブを実行できます。vericomツールはOracle GoldenGate Veridataコマンドライン・インタフェースを実行し、これらのアクティビティの自動化プログラムによる処理を可能にします。

次のジョブを実行できます。

特定の比較ペアの場合は、次のジョブを実行できます。

比較は、Oracle GoldenGate Veridata Webインタフェースからも実行できます。このインタフェースは、比較するオブジェクトの構成およびランタイム・パラメータの設定制御において優れた機能を発揮します。

10.2 vericomの実行

vericomプログラムは、これを実行するための正しいオペレーティング・システムの権限を有するユーザーは誰でも実行できます。

  1. Oracle GoldenGate Veridataがインストールされているシステムで、オペレーティング・システムのコマンド・シェルを実行します。

  2. Oracle GoldenGate Veridataインストール・ディレクトリに移動します。

  3. 次の構文を使用して、vericomプログラムを実行します。

構文

vericom{.bat|.sh} required_input [optional_input]

必須入力

次のいずれかは必須です。入力しないとエラーが返されます。オプションを1つのみ入力します。

-help |
-helprun |
{-version | -v} |
{-job | -j} job |
-reset_password [password]

-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 ]

表10-2 vericomのランタイム引数

引数 説明
-help

vericom構文コンポーネントとその説明を表示します。

-helprun

実行関連の構文コンポーネントとその説明を表示します。

{-version | -v}

使用中のOracle GoldenGate Veridataコマンドライン・インタフェースのバージョンを表示します。

{-job | -j} job

実行するジョブを指定します。jobには、ジョブをOracle GoldenGate Veridata Webで作成したときに割り当てられた名前を指定します。

-reset_password [password]

Oracle GoldenGate Veridataに格納されているデータベース・リポジトリ・パスワードの変更を要求します。

-g group
-c compare_pair

グループと比較ペアを指定します。groupおよびcompare_pairには、これらのオブジェクトがOracle GoldenGate Veridata Webで作成されたときに割り当てられた名前を指定します。

  • -gおよび-cを使用する場合は、-jも使用する必要があります。

-nw 

vericomに、ジョブが終了するまで待機せずにプロンプトを返すように命令します。かわりに、ジョブを起動するとすぐvericomに戻ります。

-rP profile

ジョブに定義されたプロファイルを上書きします。profileには、プロファイルをOracle GoldenGate Veridata Webで作成したときに割り当てられた名前を指定します。

  • -rPを使用する場合は、-jを使用する必要があります。

-rR

実行上書きオプション。非同期ファイルに格納された情報に基づき、前の実行で非同期であった行のみ比較します。結果では、レプリケーションまたは別のメソッドで同期に戻された行が識別されます。

  • 同じ実行で-rRおよび-rOを使用しないでください。

-rO

実行上書きオプション。前回の実行からの非同期ファイルに基づきOOSXMLファイルを生成します。ファイル内の各行のXMLを生成します。XMLは、XMLエディタ内の非同期情報の確認またはその他の目的に使用できます。

  • -rO-jと一緒に使用する必要があります。

  • 同じ実行で-rRおよび-rOを使用しないでください。

-rN threads

使用する同時比較スレッド数を指定します。サーバー上のプロセッサ数と同じスレッド数を使用できます。このオプションは、デフォルトのジョブ・プロファイルを上書きし、-jを使用してジョブが実行されていない場合、または-j-gおよび-cと組み合せて使用し、1つの比較のみが実行される場合、無効です。

-rD seconds

レプリケーション遅延を考慮して指定した秒数だけ確認手順を遅らせます。確認手順を遅らせると、更新済みソース値のレプリケーションが間に合わなかったために発生する非同期結果のFalse数が減ります。このオプションはデフォルトのジョブ・プロファイルを上書きし、-rRオプションを使用する場合は無効です。

-rC | +rC

確認手順(OOSの確認)をジョブで実行するかどうかを制御します。

  • -rCは確認手順をスキップします。ソース表のアクティビティが停止、またはレプリケーションでターゲット表を連続して更新できない場合は、確認手順をスキップできます。

  • +rCは確認手順を含めます。

これらのオプションはデフォルトのジョブ・プロファイルを上書きし、相互に排他的です。-jを使用しない場合は有効ではありません。

-rOb | -rOx | -rO2 | -rO0

非同期レポートに生成されるファイルの種類を制御します。

  • -rObは、Oracle GoldenGate Veridata Webブラウザと互換性があるバイナリ形式を生成します。

  • -rOxはXMLで出力します。

  • -rO2はバイナリとXMLの両方で出力します。

  • -rO0は非同期出力を抑制します。

これらのオプションはデフォルトのジョブ・プロファイルを上書きし、相互に排他的です。-rRを使用しない場合は有効ではありません。

-rOs records

OOSXMLファイルのチャンクに書込まれる非同期行数を制限します。チャンク内にファイルに書込むと、システムで定期的なアーカイブおよびパージができるようにファイルの大きさが抑制されます。指定した行数が書込まれると現在のファイルは閉じられ、新規ファイルが開きます。このオプションはデフォルトのジョブ・プロファイルを上書きし、-rRを使用する場合は無効です。

-rTi

初回比較手順に対するOracle GoldenGate Veridataエージェントのトレースをオンに設定します。Oracleサポート・アナリストのガイダンスなしで使用しないでください。

-rTc

確認手順に対するOracle GoldenGate Veridataエージェントのトレースをオンに設定します。Oracleサポート・アナリストのガイダンスなしで使用しないでください。

-rTs trace_number

Oracle GoldenGate Veridataサーバーに対するトレースをオンに設定します。trace_numberはサーバー実行トレース・フラグのビットマスクです。このレベルが高いほど、トレース・データがより詳細になります。Oracleサポート・アナリストのガイダンスなしで使用しないでください。

-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つの比較ペアを比較(-j-gおよび-cの組合せ)する場合のみ有効で、それ以外は無視されます。

-pS source_partition_name

すでに定義されリポジトリに格納されている既存のソース・パーティションを指定します。パーティション名は検証されず、Veridata サーバーに直接渡されます。指定したパーティションがない場合はエラーが発生します。

-pSq source_sql_predicate

SQL表の既存のソース・パーティションを上書きするパーティションを定義するSQL述部を指定します。述部とはWHEREキーワードに続く条件文で、たとえばLAST_NAME BETWEEN "A" AND "M"のようなものです。WHEREキーワードは含めないでください。実行時に自動的に追加されます。

述部に複数のワードが含まれる場合は、引用符で囲んで単一コマンド引数にする必要があります。引用符のタイプは使用中のコマンド・シェルまたはインタプリタに依存します。

述部に特殊文字(sh/cshの$*<またはWindowsの%<など)が含まれる場合は、シェルまたはインタプリタに対して適切にエスケープする必要があります。

-pSA1 source_ascii_start_key

ASCIIキーを、Enscribeファイルの既存のソース・パーティションを上書きするパーティションの開始キー値として指定します。

-pSA2 source_ascii_end_key

ASCIIキーを、Enscribeファイルの既存のソース・パーティションを上書きするパーティションの終了キー値として指定します。

-pSH1 source_hex_start_key

16進数キーを、Enscribeファイルの既存のソース・パーティションを上書きするパーティションの開始キー値として指定します。

-pSH2 source_hex_end_key

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述部を指定します。このオプションは、-pSq source_sql_predicateおよび-pTq target_sql_predicateと同じ規則に従います。

-rd0 | -rdN run_ID

このオプションはNonStop SQL/MPおよびEnscribeでのみ有効です。比較ペアのデルタ処理を制御します。

  • -rd0はこの実行のデルタ処理を無効化します。すべての行が比較されます。

  • -rdN run_IDは、デルタの基準として前回のジョブ実行を使用してデルタ処理を有効化します。run_IDには、ジョブ比較レポートの最初のRun ID行の数を使用します。Vericomは指定された実行IDを検証しません。

これらのオプションを使用するには、次で比較ペアを指定する必要があります。

  • -j

  • -g

  • -c


10.3 Vericom終了ステータス

Vericomは、次のいずれかのステータスで終了します。ここで示す例は、UNIXまたはLinuxシステムに対するものです。

ステータス 説明
0

コマンドが正常に実行されました。ジョブが実行された場合は、すべての行は同期で終了しました。

-nwが指定された場合、ジョブが正常に開始された場合の終了ステータスは0です。

1

無効なvericom構文を使用しました。たとえば、次の構文は無効です。

vericom.sh -helptun(入力ミス)

vericom.sh -j -g group1(ジョブ名が欠落しています。)

2

Vericomveridata.locまたはveridata.cfgを検索しましたが、接続情報は見つかりませんでした。また、接続パラメータがコマンド引数で指定されていません。

3

比較を実行したフラグを含む入力エラーの細分性を上げてください。たとえば、次のような誤りがこのエラーを引き起こします。

vericom.sh –j job1 –c address=address

前述の例では、-g groupの入力が欠落しています。-cを使用する場合は、-jが必要です。

vericom.sh –j job1 –g group1 –rd0

前述の例では、デルタ処理が比較ペア・レベルで適用されるため、-rd0フラグには–cが必要です。

4

ジョブは正常に実行されましたが、同期以外の何かの比較ステータスの行がありました。

5

Oracle GoldenGate Veridataサーバーで通信エラーが発生しました。


10.4 Vericom出力例

vericomで実行する比較結果を表示する場合は、Oracle GoldenGate Veridata Webを使用して比較レポート(1.3項「比較結果の表示」を参照)を表示でき、vericomが端末に返した出力を表示できます。実行が正常に終了すると、ジョブの統計が表示されます。

例1

次の例は、-wを指定しない場合のTestJobのWindowsシステム上での実行を示しています。プロセスはステータス0で終了し、終了済みジョブの統計は表示されません。

C:\veridata\server\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
例2

次の例は、-wを指定した場合のTestJobの実行を示しています。比較ペアの1つに検証エラーがあったため、プロセスはステータス4で終了します。終了済みジョブは表示されます。

C:\veridata\server\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
例3

次の例は、-wを指定した場合のジョブTestJobの比較ペアTABLE9=TABLE9の実行を示しています。表が同期であるため、プロセスはステータス0で終了します。終了済みジョブは表示されます。

C:\veridata\server\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'に格納されています。