4 アイデンティティの管理とデータの比較

Vericomコマンドライン・インタフェースには、資格証明ストアでアイデンティティを管理し、比較を実行するためのツールがあります。

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

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

Vericomツールの概要

vericomツールを使用して、オペレーティング・システムのコマンド・シェルから特定の比較ジョブを実行できます。vericomツールはOracle GoldenGate Veridataコマンドライン・インタフェースを実行し、これらのアクティビティの自動化プログラムによって処理できるようにします。実際のユーザー名およびパスワードを指定することなく、簡単にvericomツールを使用できます。

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

  • ジョブ全体またはジョブの特定の比較ペアの実行

    注意:

    グループは個別に実行できません。

  • トレースの設定 (Oracleサポート・アナリストのガイダンスがある場合のみ)

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

  • 以前の非同期結果の確認

  • 以前の実行からの非同期XMLの生成

  • Webユーザー・インタフェースから可能な同じプロファイル設定および行パーティションの上書き

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

資格証明ストアでのアイデンティティの管理

この項では、資格証明ストアを使用して、暗号化されたデータベース・パスワードおよびユーザーIDを保持し、それらを別名に関連付ける方法を示します。これは、コマンドまたはパラメータ・ファイルで指定される別名で、実際のユーザーIDやパスワードではありません。暗号化鍵のユーザー入力は必要ありません。資格証明ストアは、Oracle Credential Store Framework()内のAuto Loginウォレットとして実装されます。

資格証明ストアには、次のトピックがあります。

別名には、次のトピックがあります。

資格証明ストアの追加

–addCredentialStore引数は、入力を受け入れません。資格証明ストアのデフォルトの場所は、<Domain_home>/veridata/dircrdです。credential.store.locationプロパティの下のveridata.cfgファイル内でディレクトリを指定することで、これを変更できます。credential.store.locationプロパティのデフォルト値は、ドメインの場所に相対的なveridata/dircrdです。資格証明ストアの独自の場所を作成することや、vericomの実行前にこのプロパティを変更することができます。資格証明ストア・ウォレットは、読取りおよび書込み権限(-rw-------)のみで作成されます。

例4-1 例

vericom.sh -wluser username -wlport veridata server port –addCredentialStore

資格証明ストアの削除

—deleteCredentialStore引数は、入力を受け入れません。このオプションは、資格証明ストアを削除します。資格証明ストアの場所は、veridata.cfgファイル内のcredential.store.locationです。資格証明ストア・ウォレットおよびそのコンテンツは、恒久的に削除されます。

例4-2 例

vericom.sh -wluser username -wlport veridata server port –deleteCredentialStore

別名の作成

-createAlias引数が入力として受け入れるのは、ゼロまたは1つです。入力を指定した場合、それが別名として使用されます。指定しない場合、wluser引数で指定したユーザー名が別名として使用されます。この別名が、ユーザー名およびパスワードのかわりに使用され、実際のユーザー名およびパスワードを指定する必要はありません。

例4-3 例

vericom.sh -wluser username-wlport veridata server port –createAlias aliasname (オプション)

別名の使用

-createAliasを使用して作成された別名には、-wluserAlias引数を使用する必要があります。このオプションを使用すると、パスワードの入力を要求されません。-wluserAlias-wluserAlias引数は使用しないでください。ウォレットに別名が存在しない場合は、エラーが返されます。

例4-4 例

vericom.sh -wluserAlias alias-name -wlport veridata server port –job job name

別名の表示

-displayAlias引数を使用して、ウォレットのすべての別名およびユーザー名をリストします。パスワードは表示されません。

例4-5 例

vericom.sh –wluser username -wlPort veridata server port -displayAlias

別名の更新

-updateAlias引数を使用して、有効なユーザーのパスワードを更新します。

例4-6 例

vericom.sh -wluser username -wlport veridata server port –updateAlias alias-name (オプション)

別名の削除

別名を削除するには、-deleteAlias引数を使用します。他の別名が同じユーザーを参照していない場合は、別名とともに対応するユーザー資格証明も削除されます。

例4-7 例

vericom.sh -wluser username -wlport veridata server port –deleteAlias aliasname (オプション)

Vericomツールの実行

オペレーティング・システムの権限を有するユーザーは誰でも、vericomツールを実行できます。

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

  2. VERIDATA_DOMAIN_HOME/veridata/binディレクトリに移動します。

  3. vericomツールを実行します: vericom{.bat|.sh} required_parameter [optional_parameter

必須パラメータ

次のいずれかのオプションを入力します。入力しないとエラーが返されます。

[-wlport port ] |
-wluser user_name |
-help |
-helprun |
[-version | -v] |
[-job | -j] job |

この例では、-wluserオプションに、サーバーに接続するために必要なOracle GoldenGate Veridataサーバー(サーバー)のユーザー名を指定します。このユーザーには、コマンドライン操作にアクセスして実行するためのveridataCommandLineUser権限が必要です。このユーザーには、ジョブを正常に実行し、インポート・ユーティリティとエクスポート・ユーティリティを使用するためのveridataAdministratorまたはveridataPowerUser権限も必要です。

ユーザー・ロールの定義によるOracle GoldenGate Veridataへのアクセスの保護を参照してください。

-version-v-helpまたは-helprunオプションは、指定した他のオプションより優先されます。

オプション・パラメータ

これらはオプションのパラメータです。

[ -g group -c compare_pair ]
[ -nw ]
[ -repair | -norepair]
[ -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 ]
-addCredentialStore
       Create a new Credential Store at location defined in the veridata.cfg file
  -deleteCredentialStore
       Delete the Credential Store
  -createAlias
       Create an alias for user provided in the wluser argument
  -updateAlias
       Update the user name and password for the alias with user provided in the wluser argument
  -deleteAlias
       Delete the alias
  -displayAlias
       Display the alias stored in credential store
  -wlUserAlias
       Use the alias in place of wluser

表4-1 Vericomランタイム引数

引数 説明
-wluser

サーバーを認証して接続するサーバー・ユーザー名を指定します。

-wlport

サーバーのポート番号を指定します。

-help

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

-helprun

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

{-version | -v}

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

{-job | -j} job

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

-g group
-c compare_pair

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

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

-nw 

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

-repair | -norepair

比較が完了し、非同期データが存在することを確認した後で、修復するかどうかを指定します

-rP profile

ジョブに定義されているプロファイルをオーバーライドします。ジョブに定義されているプロファイルの場合です。profileには、プロファイルをOracle GoldenGate Veridata Webで作成したときに割り当てられた名前を指定します。

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

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

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

-rO

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

  • -jを指定して-rOを使用する必要があります。

  • 同じ実行で-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サポート・アナリストのガイダンスなしで使用しないでください。

-rTs trace_number

サーバーに対するトレースをオンに設定します。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

既存のソース行パーティションまたはパーティション基準で定義されたパーティションの上書きを使用して実行します。これらのオプションは相互に排他的です。1つの比較ペアを比較(-j-gおよび-cの組合せ)する場合のみ有効で、それ以外は無視されます。

-pS source_partition_name

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

-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

比較ペアのデルタ処理を制御します。

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

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

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

  • ‐j

  • ‐g

  • ‐c

-wp seconds

ジョブが完了するまで待機します。クライアントは、指定した間隔(秒単位)で、サーバーに送信されたジョブのステータスもポーリングします。

  • この引数が受け入れるのは、データなし、または1つのデータです

    入力。入力を指定した場合、別名として使用されます

    名前。入力を指定しない場合、wluser引数で指定したユーザー名が別名となります。この別名が、ユーザー名およびパスワードのかわりに使用されます。実際のユーザー名およびパスワードを指定する必要はありません。

    -wpは、-job | -jとともに使用する必要があります。

-addCredentialStore 

この引数は、入力を受け入れません。資格証明ストアのデフォルトの場所は、<Domain_home>/veridata/dircrdです。このディレクトリを変更するには、プロパティcredential.store.locationの下のveridata.cfgファイル内でそれを指定します。credential.store.locationプロパティのデフォルト値は、ドメインの場所に相対的なveridata/dircrdです。資格証明ストアの独自の場所を作成することや、vericomの実行前にこのプロパティを変更することができます。資格証明ストア・ウォレットは、読取りおよび書込み権限(-rw-------)のみで作成されます。

-deleteCredentialStore

この引数は、入力を受け入れません。資格証明ストアを削除するには、このオプションを使用します。資格証明ストアの場所は、veridata.cfgファイル内で定義されているプロパティcredential.store.locationの値です。資格証明ストア・ウォレットおよびそのコンテンツは、恒久的に削除されます。

-createAlias

この引数が入力として受け入れるのは、データなし、または1つのデータです。入力を指定した場合、それが別名として使用されます。入力を指定しない場合、wluser引数で指定したユーザー名が別名となります。この別名が、ユーザー名およびパスワードのかわりに使用されます。実際のユーザー名およびパスワードを指定する必要はありません。

-wluserAlias

この引数は、ユーザー名のかわりに-createAliasを使用して作成された別名とともに使用されます。パスワードを求めるプロンプトは表示されません。このオプションを-wluser引数とともに使用する必要はありません。ウォレットに別名が存在しない場合は、エラーが返されます。

-displayAlias

ウォレット内のすべての別名をリストするには、この引数を使用します。別名とユーザー名のみが表示されます。

-updateAlias

この引数は、パスワードの更新に使用されます。

-deleteAlias

この引数を使用して、ウォレットに作成した別名を削除します。

Vericom終了ステータス

vericomコマンドライン・ツールは、次のいずれかのステータスで終了します。ここで示すのは、UNIXまたはLinuxシステムに対する例です。

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

表4-2 vericom終了ステータス

ステータス 説明
0

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

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

1

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

vericom.sh -helptun (入力ミスによるエラーが発生しました。)

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

3

比較フラグを含む入力エラーの細分性を提供します。たとえば、次のような誤りがこのエラーを引き起こします。

vericom.sh –j job1 –c address=address

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

vericom.sh –j job1 –g group1 –rd0

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

4

ジョブは正常に実行されましたが、いくつかの行の比較が同期していません。

5

サーバーとの通信エラーが発生しました。

Vericom出力例

vericomツールを使用して実行する比較の結果を表示するには、Oracle GoldenGate Veridata Webユーザー・インタフェースを使用して比較レポートを表示します。ツールによって端末に返された出力を表示することもできます。実行が正常に終了すると、ジョブの統計が表示されます。

「比較結果の表示」を参照してください。

次の例では、TestJobジョブを使用します。

例1   

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

VERIDATA_DOMAIN_HOME\veridata\bin\vericom.bat -wluser veridata -wlport 8830 -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で終了します。終了済みジョブは表示されます。

VERIDATA_DOMAIN_HOME\veridata\bin\vericom.bat -wluser veridata -wlport 8830 -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で終了します。終了済みジョブは表示されます。

VERIDATA_DOMAIN_HOME\veridata\bin\vericom.bat -wluser veridata -wlport 8830 -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'変数です。