SEND REPLICAT
SEND REPLICATでは、起動中または実行中のReplicatプロセスと通信します。リクエストは、Replicatでユーザーからのコマンドを受け入れる準備が完了すると同時に処理されます。
構文
SEND REPLICAT group_name[threadID],
{
CACHEMGR {CACHESTATS | CACHEQUEUES | CACHEVMUSAGE} |
DEPENDENCYINFO [TXNCOUNT num] |
FORCESTOP |
GETLAG |
GETPARAMINFO [parameter_name] [FILE output_file] |
HANDLECOLLISIONS | NOHANDLECOLLISIONS [table_spec] |
INTEGRATEDPARAMS(parameter_specification) |
LOGEND |
REPORT [HANDLECOLLISIONS [table_spec]] |
RESUME |
STATUS |
STOP |
TRACE[2] [DDLINCLUDE | DDL[ONLY]] file_name |
TRACE[2] OFF |
TRACE OFF file_name |
TRACEINIT |
THREADS (threadID[, threadID][, ...][, thread_range[, thread_range][, ...])
}
group_name[threadID]
Replicatグループの名前または調整Replicatの特定のスレッドの名前(fin003など)。コマンドが特定のスレッドに対して発行されると、使用されているオプションはそのスレッドにのみ適用されます。かわりの方法としての、threadIDをグループ名で含ませないのではなく、THREADSオプションを指定してSEND REPLICATを発行できます。Replicatが実行されていない場合、エラーが返されます。
CACHEMGR {CACHESTATS | CACHEQUEUES | CACHEVMUSAGE}
Oracle GoldenGateメモリー・キャッシュ・マネージャに関する統計を返します。CACHEMGRは、Oracleサポートから指示が明示的にあった場合にのみ使用します。
CACHESTATS
ファイル・キャッシングの統計を返します。
CACHEQUEUES
空きキューのみの統計を返します。
CACHEVMUSAGE
仮想メモリー使用量の統計を返します。
DEPENDENCYINFO [TXNCOUNT num]
PRトランザクション依存関係グラフから情報を出力します。最初に、現在実行されているトランザクション・グループが出力され、次に、他のトランザクションに依存している待機中のトランザクションが出力されます。TXNCOUNTは、印刷する待機トランザクションの数を決定します。デフォルト値は10、最大値は99です。
FORCESTOP
通知をすべて省略してReplicatを強制停止します。このコマンドは、アクティブ・トランザクションをロールバックしてプロセスを即座に停止します。このコマンドは、Replicat全体に適用されるため、特定のReplicatスレッドには使用できません。
GETLAG
Replicatとトレイル間の実際のタイム・ラグを表示します。タイム・ラグは、Replicatによって最終レコードが処理された時間と、トレイルにおけるそのレコードのタイムスタンプ間の差異(秒)です。結果はLAG REPLICATと同じです。
GETPARAMINFO [parameter_name] [FILE output_file]
GETPARAMINFOでは、Extract、Replicat、Manageなどの実行中のインスタンスのランタイム・パラメータ値を問い合せます。単一のパラメータまたはすべてのパラメータを問い合せて、出力をコンソールまたはテキスト・ファイルに送信できます
parameter_name
デフォルトの動作では、使用中のすべてのパラメータ(アプリケーションがこれまでに問い合せたパラメータ、その他のパラメータおよびその現在の値)が表示されます。特定のパラメータを指定すると、出力はその名前でフィルタされます。
FILE output_file
出力をリダイレクトするテキスト・ファイルの名前。
HANDLECOLLISIONS |
NOHANDLECOLLISIONS [table_spec] |
HANDLECOLLISIONSの動作を制御します。このオプションを使用するかわりに、Replicatパラメータ・ファイルにHANDLECOLLISIONSまたはNOHANDLECOLLISIONSパラメータを指定することもできます。Oracle GoldenGateパラメータおよびファンクション・リファレンスのHANDLECOLLISIONS \| NOHANDLECOLLISIONSを参照してください。このコマンドはSEND REPLICAT group_name[threadID]を使用して個別のスレッドに直接送信することができます。また、THREADSオプションを使用して、複数ののスレッドに影響を与えるコーディネータ・スレッドを介してコマンドを送信できます。
HANDLECOLLISIONS
HANDLECOLLISIONSを使用して、ソース・データベースがアクティブなときに初期データ・ロードを実行する場合の自動エラー処理を有効にします。初期ロードが完了してオンライン・データの変更がターゲット表に適用された後、NOHANDLECOLLISIONSオプションを使用してSEND REPLICATを発行するか、パラメータ・ファイルからパラメータを削除することにより、必ずHANDLECOLLISIONSを無効にしてください。注意: `SENDによって返されたメッセージ
REPLICAT` with `HANDLECOLLISIONS`, when issued for a specific Replicat thread, shows that the command set `HANDLECOLLISIONS` for all `MAP` statements, not only the one handled by the specified thread. This is a known issue. The command actually affects only the `MAP` statement that includes the specified thread.
{: .infoboxnote}
NOHANDLECOLLISIONS
HANDLECOLLISIONSパラメータを無効にします。ただしパラメータ・ファイルからは削除しません。次にReplicatを起動するときにHANDLECOLLISIONSを有効化しないようにするには、パラメータ・ファイルからこのパラメータを削除する必要があります。
table_spec
table_specでは、HANDLECOLLISIONSまたはNOHANDLECOLLISIONSを適用を特定のターゲット表、または標準ワイルドカード(*)で指定したターゲット表グループに制限します。
INTEGRATEDPARAMS(parameter_specification)
(Oracle)統合Replicatをサポートします。Replicatが統合モードで実行されている間にデータベース・インバウンド・サーバーにパラメータ指定を送信します。このコマンドでは、一度に1つのパラメータ指定のみを送信できます。複数のパラメータ変更を送信するには、次の例に示すように、複数のSEND REPLICATコマンドを発行します。
SEND REPLICAT repe INTEGRATEDPARAMS (parallelism 4)
SEND REPLICAT repe INTEGRATEDPARAMS (max_sga_size 250)
処理の継続性を維持するため、パラメータ変更はトランザクション境界で行われます。
LOGEND
Replicatがデータ・ソースのすべてのレコードを処理したかどうかを確認します。
REPORT [HANDLECOLLISIONS [table_spec]]
Extractレポート・ファイルに中間統計レポートを生成します。RESETREPORTSTATS | NORESETREPORTSTATSオプションとともに使用する場合、表示される統計は、STATOPTIONSパラメータの構成によって異なります。STATOPTIONSを参照してください。
HANDLECOLLISIONS
HANDLECOLLISIONSが有効な表を表示します。
table spec
特定のターゲット表または標準のワイルドカード(*)で指定されたターゲット表のグループに出力が制限されます。
RESUME
EVENTACTIONS SUSPENDイベントによって一時停止されたプロセスを再開(アクティブに)します。プロセスは、一時停止された時点から通常の処理を再開します。
STATUS
トレイル内の現在の場所と、現在のトランザクションに関する情報を返します。フィールド出力は次のとおりです:
-
処理ステータス(スレッド単位、調整Replicatの場合)
-
トレイル・ファイル内の位置(スレッド単位、調整Replicatの場合)
-
トレイル順序番号(スレッド単位、調整Replicatの場合)
-
トレイルのRBA
-
トレイル名
処理ステータス・メッセージは次のとおりです:
-
Delaying– 追加のデータを待機中 -
Suspended– 再開を待機中 -
Waiting on deferred apply–DEFERAPPLYINTERVALパラメータに基づいて処理待機中 -
Processing data– データを処理中 -
Skipping current transaction–START REPLICATとSKIPTRANSACTIONを使用している場合。 -
Searching for START ATCSNcsn–START REPLICATがATCSN付きで使用されました。 -
Searching for START AFTERCSNcsn–START REPLICATがAFTERCSN付きで使用されました。 -
Performing transaction timeout recovery– 現在の未完了のトランザクションを取り消し、新しいトランザクションを開始するために再配置しています(TRANSACTIONTIMEOUTパラメータを参照)。 -
Waiting for data at logical EOF after transaction timeout recovery–TRANSACTIONTIMEOUT終了後に未完了のソース・トランザクションの残りの部分の受信を待機中。 -
At EOF (end of file)– 処理するレコードなし
THREADSが使用されるか、コマンドが特定のスレッドに対して発行される場合のスレッドのステータス・メッセージは次のとおりです:
-
Waiting for consensus stop point: これは、スレッドがバリア・トランザクションに対して同期を試みていることを示します。 -
Waiting for Watermark: すべてのスレッドが、トレイル内の同じトランザクション境界(グローバル・ウォーターマークと呼ばれる)で停止するように試みていることを示します。 -
Waiting on all threads to start up: スレッドが、バリア・トランザクションの成功後にまたはReplicatの起動後にすべてのスレッドが開始することを待機していることを示します。
コーディネータ・スレッド・ステータス・メッセージは次のとおりです:
-
Waiting for all threads to register:MAP文がすべて解析されて、そこで指定されているスレッドIDが判別されることを示します。 -
Processing data: データが正常に処理されていることを示します。 -
Suspended, waiting to be resumed:SEND REPLICATコマンドがSUSPENDリクエストとともにReplicatに送信されたことを示します。 -
At EOF: トレイルに処理するデータがないことを示します。 -
Waiting to register MAP statistics: Replicatが、レポート・ファイルに送信する処理統計を収集していることを示します。
STOP
Replicatを正常に停止します。このコマンドは、Replicat全体に適用されるため、特定のReplicatスレッドには使用できません。
THREADS (threadID[, threadID][, ...][, thread_range[, thread_range][, ...])
調整Replicatで指定した1つ以上のスレッドに対してのみコマンドを発行します。このオプションを使用するか、またはgroupnameをthreadIDとともに使用することができます。いずれかのオプションがない場合、コマンドはすべてのアクティブ・スレッドに適用されます。
threadID[, threadID][, ...]
threadID, threadID, threadIDというフォーマットでスレッドIDまたはスレッドのカンマ区切りリストを指定します。
thread_range[, thread_range][, ...]
スレッドの範囲をthreadIDlow-threadIDhighの形式で指定するか、範囲のカンマ区切りリストをthreadIDlow-threadIDhigh, threadIDlow-threadIDhighの形式で指定します。
threadID, threadID, threadIDlow-threadIDhighのように、これらの形式を組み合せることができます。
TRACE[2] [DDLINCLUDE |
DDL[ONLY]] file_name |
トレースのオンとオフを切り替えます。トレースにより、指定したファイルに情報が取得され、処理のボトルネックがわかります。トレースは、ReplicatパラメータのTRACEおよびTRACE2でも有効化できます。
Replicatが調整モードで、TRACEがTHREADSリストまたは範囲とともに使用されている場合は、現在アクティブな各スレッドのトレース・ファイルが作成されます。各ファイル名に、関連するスレッドIDが追加されます。スレッドIDによってトレース・ファイルを識別するこの方法は、SEND REPLICATがgroupnameとthreadIDの組合せによって発行される場合(SEND REPLICAT fin003 TRACE...など)またはTHREADSで指定されるスレッドが1つのみの場合、適用されません。
トレースによって深刻な処理のボトルネックが明らかになった場合、Oracleサポートに連絡してください。
TRACE
ステップごとの処理情報を取得します。
TRACE2
特定のステップではなくコード・セグメントを識別します。
DDLINCLUDE | DDLONLY
(Replicatのみ) DDLトレースを有効にして、DDLトレースをトレース・レポートに含める方法を指定します。
-
DDLINCLUDEでは、トランザクション・データ処理の通常のトレースに加えてDDLトレースを取得します。 -
DDL[ONLY]では、トランザクション・データ処理の通常のトレースを除外し、DDLのみをトレースします。このオプションは、DDLに短縮できます。
file_name
file_nameでは、Oracle GoldenGateがトレース情報を記録するファイルの相対または完全修飾名を指定します。トレースがすでに進行中の場合、既存のトレース・ファイルは閉じられ、トレースはfile_nameで指定されたファイルに対して再開します。たとえば:
SEND REPLICAT group_name TRACE file_name DDLINCLUDE
ファイル名の後に他のオプションが存在しない場合、たとえば次のようにFILEキーワードを省略できます:
SEND REPLICAT group_name TRACE DDLINCLUDE file_name
TRACE[2] OFF
トレースをオフにします。
TRACE OFF file_name
指定したトレース・ファイルのみトレースをオフにします。このオプションは、複数のEVENTACTIONS文によって複数のトレース・ファイルを使用できる、EVENTACTIONS機能をサポートしています。
TRACEINIT
トレース統計を0にリセットしてから、統計の累積を再開します。このオプションを使用して、履歴ではなく処理の現在の動作をトラッキングします。
例
SEND REPLICAT repe, HANDLECOLLISIONS
SEND REPLICAT repe, REPORT HANDLECOLLISIONS rep_*
SEND REPLICAT repe, GETLAG
SEND REPLICAT repe, INTEGRATEDPARAMS(parallelism 10)
次では、調整Replicatのスレッド3のラグを取得します。
SEND REPLICAT repe, GETLAG
次では、調整Replicatのスレッド1のトレースのみを有効にします。この場合、1つのスレッドのみがトレースされるため、トレース・ファイルにthreadIDの拡張は含まれません。ファイル名はtrace.trcです。
SEND REPLICAT repe, TRACE THREADS(1) FILE ./dirrpt/trace.trc
次では、調整Replicatのスレッド1、2、3のトレースを有効にします。すべてのスレッドがアクティブであると想定した場合、トレースはファイルtrace001、trace002およびtrace003を生成します。
SEND REPLICAT repe TRACE THREADS(1-3) FILE ./dirrpt/trace.trc
次では、調整Replicatのスレッド1のトレースのみを有効にします。コマンドはTHREAD句を使用せずにスレッド1に対し直接発行されたので、トレース・ファイルの名前はtrace (スレッドIDの接尾辞なし)になります。
SEND REPLICAT repe TRACE FILE ./dirrpt/trace.trc