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。命令若是針對特定繫線發出,所使用的選項只會套用至該繫線。另外,您也可以使用 THREADS 選項來發出 SEND REPLICAT,而不用包含含有群組名稱的 threadID。Replicat 如果不在執行中,系統會傳回錯誤。

CACHEMGR {CACHESTATS | CACHEQUEUES | CACHEVMUSAGE}

傳回 Oracle GoldenGate 記憶體快取管理程式的相關統計資料。CACHEMGR 只能作為 Oracle Support 明確的指示使用。

CACHESTATS

傳回檔案快取的統計資料。

CACHEQUEUES

僅傳回可用佇列的統計資料。

CACHEVMUSAGE

傳回虛擬記憶體使用量的統計資料。

DEPENDENCYINFO [TXNCOUNT num]

從請購單異動相依性圖表列印資訊。它會先列印目前正在執行的交易群組,然後列印相依於其他交易的等待中交易。TXNCOUNT 決定要列印的等待交易數。預設值是 10,最大值是 99。

FORCESTOP

略過所有通知,強制將 Replicat 停止。此命令會倒回任何作用中異動並立即停止處理作業。此命令套用至整個 Replicat,不能用於特定的 Replicat 繫線。

GETLAG

顯示 Replica 與歷程檔之間的真實延遲時間。延遲時間是 Replicat 處理最後一筆記錄的時間與歷程檔中該記錄之時戳之間的差異 (秒)。其結果與 LAG REPLICAT 相同。

GETPARAMINFO [parameter_name] [FILE output_file]

使用 GETPARAMINFO 來查詢執行中執行處理的執行時期參數值,包括 Extract、Replicat 和 Manager。您可以查詢單一參數或所有參數,然後將輸出傳送至主控台或文字檔

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 在執行初始資料載入時啟用自動錯誤處理。確定要停用 HANDLECOLLISIONS,方法為使用 NOHANDLECOLLISIONS 選項發出 SEND REPLICAT ,或在起始載入完成且線上資料變更套用至目標表格之後,將參數從參數檔中移除。注意: `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 以整合模式執行時,會將參數設定傳送到資料庫內送伺服器。使用此命令時,一次只能傳送一個參數設定。若要傳送多個參數變更,請依照下列範例發出多個 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

傳回歷程檔內目前的位置,以及有關目前異動的資訊。欄位輸出包括:

可能的處理狀態訊息為:

使用 THREADS 或針對特定執行緒發出命令時,可能的執行緒狀態訊息為:

可能的協調器繫線狀態訊息為:

STOP

正常停止 Replicat。此命令套用至整個 Replicat,不能用於特定的 Replicat 繫線。

THREADS (threadID[, threadID][, ...][, thread_range[, thread_range][, ...])

只對指定的繫線或協調式 Replicat 的多個繫線發出命令。您可以使用此選項,或將 groupname 與 threadID 搭配使用。若未使用其中任一個選項,命令會套用至所有作用中繫線。

threadID[, threadID][, ...]

指定繫線 ID 或以逗號分隔的繫線清單,格式為 threadID, threadID, threadID。

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。當 groupname 以 threadID (如 SEND REPLICAT fin003 TRACE …) 發出 SEND REPLICAT 或僅以 THREADS 指定一個繫線時,此方法不適用以繫線 ID 來識別追蹤檔案。

如果追蹤揭示重大的處理瓶頸,請洽詢 Oracle 客戶服務部以取得協助。

TRACE

擷取逐步的處理資訊。

TRACE2

識別程式碼區段而不是特定步驟。

DDLINCLUDE | DDLONLY

(僅限 Replicat) 啟用 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 啟用追蹤功能。在此情況下,由於只追蹤一個執行緒,因此追蹤檔的副檔名不會是 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 啟用追蹤功能。因為直接針對執行緒 1 發出命令而不使用 THREAD 子句,所以追蹤檔會命名為 trace (沒有執行緒 ID 字尾)。

SEND REPLICAT repe TRACE FILE ./dirrpt/trace.trc