RESTART REPLICAT

使用 RESTART REPLICAT 來停止並啟動 Replicat 群組。若要確認 Replicat 已啟動,請使用 INFO REPLICAT 或 STATUS REPLICAT 命令。

一般起始點

Replicat 可在其一般起始點 (從初始或目前檢查點) 啟動,或是從歷程檔中使用者指定的替代位置啟動。

若無任何選項,RESTART REPLICAT 會讓 Replicat 在下列其中一個點開始處理,以維持資料完整性:

替代起始點

START REPLICAT 的 SKIPTRANSACTION、ATCSN 和 AFTERCSN 選項會讓 Replicat 變成整體,或是協調式 Replicat 的特定繫線,在歷程檔中除了一般起點之外的交易開始進行處理。請使用這些選項執行下列操作:

語法

RESTART REPLICAT group_name_wildcard
[SKIPTRANSACTION | {ATCSN csn | AFTERCSN csn}]
[FILTERDUPTRANSACTIONS | NOFILTERDUPTRANSACTIONS]
[THREADS (threadID[, threadID][, ...][, thread_range[, thread_range][, ...]])]

group_name_wildcard

Replicat 群組或萬用字元 (*) 的名稱,用來指定多個群組。例如,T* 會啟動名稱以 T 開頭的所有 Replicat 群組。

SKIPTRANSACTION

讓 Replicat 略過歷程檔中其預期啟動位置後的第一個異動。來自該第一個異動的所有作業都會被排除。

如果此 Replicat 也使用 MAXTRANSOPS 參數,處理作業可能會從交易中間的某個位置開始讀取歷程檔。在該情況下,會略過該部分異動的剩餘部分,而 Replicat 則會從檔案中的下一筆開始異動記錄繼續正常處理。如果使用 DISCARDFILE 參數,則略過的記錄會寫入捨棄檔案;否則會將訊息寫入類似以下的報表檔案:

User requested START SKIPTRANSACTION. The current transaction will be skipped. Transaction ID txid, position Seqno seqno, RBA rba

只有當 Replicat 讀取的歷程檔屬於線上變更同步化組態 (含檢查點) 的一部分時,SKIPTRANSACTION 才會有效。不適用於 task-type 初始載入 (其中 SPECIALRUN 與 ADD REPLICAT 搭配使用)。

ATCSN csn AFTERCSN csn

在特定 CSN 設定使用者定義的起始點。使用 ATCSN 或 AFTERCSN 時,與下列其中一項類似的訊息會寫入報表檔案:

User requested start at commit sequence number (CSN) csn-string
User requested start after commit sequence number (CSN) csn-string

關於這些選項的一般資訊:

FILTERDUPTRANSACTIONS | NOFILTERDUPTRANSACTIONS

讓 Replicat 忽略已處理過的異動。當 Extract 重新定位至新的起點時使用 (請參閱 "START EXTRACT " 的 ATCSN 或 AFTERCSN 選項),而且您確信歷程檔中有重複的交易可能會導致 Replicat 停止。此選項需要使用檢查點表格。對於 Oracle Database,此選項只適用於非整合式模式的 Replicat。在整合式模式和自動重新產生目標歷程檔的情況下,整合式模式會以通透方式處理重複的異動。預設值為 FILTERDUPTRANSACTIONS。

THREADS thread_list

當 Replicat 為協調模式時,適用於 SKIPTRANSACTION、ATCSN 和 AFTERCSN。不適用於未提供這些選項的 RESTART REPLICAT。啟動指定的 Replicat 繫線或位於指定位置的繫線。

thread_list

以逗號分隔的範圍清單,格式為 threadIDlow-threadIDhigh, threadIDlow-threadIDhigh。

!

(驚嘆號) 立即重新啟動 Replicat。停止異動。

範例


RESTART REPLICAT finance

下列範例在特定的 CSN 啟動 Replicat。

RESTART REPLICAT finance, ATCSN 6488359

以下會使協調式 Replicat 的繫線 4 與 5 在 Replicat 啟動時略過它們上一個檢查點後的第一個異動。如果這是一個 10 繫線協調式 Replicat,則繫線 0-3 與 6-10 都會在一般起始點 (即它們上一個檢查點的起始點) 啟動。

RESTART REPLICAT fin SKIPTRANSACTION THREADS (4-5)

下列範例會使協調式 Replicat 的繫線 1-3 在 CSN 6488359 啟動、繫線 9-10 在 CSN 6488360 之後啟動,以及使繫線 7 與 8 略過其上一個檢查點後的第一個異動。

RESTART REPLICAT fin ATCSN 6488359 THREADS (1-3), AFTERCSN 6488360 THREADS (9-10), SKIPTRANSACTION THREADS (7,8)