我有一個關於試圖阻止向發佈者分發給訂閱者的大型事務的問題。假設有人不小心更新了一張包含5000萬條記錄的表中的每條記錄,然後在意識到自己的錯誤時將所有記錄重新設置回來。在這種情況下,這些更改將在事務複製設置中分配給兩個訂戶。在系統上它表示它將會複製到用戶2天,但是克服這個問題的最好方法是什麼?在SQL Server中停止複製大型事務
我已經看到這是可能的,事實上很容易跳過使用交易的xact_seqno
,sp_helpsubscriptionerrors
和sp_setsubscriptionxactseqno
命令。但是,如果將此用於正在積極分發的交易,會發生什麼?有什麼需要停止的嗎?
如果這不是解決問題的最佳方法,那會是什麼?
我實際上只是嘗試在單獨的測試環境設置中單純嘗試這樣做。使用'sp_setsubscriptionxactseqno'似乎不起作用;該交易仍然得到應用。我也嘗試從'MSrepl_commands'和'MSrepl_transactions'在同一個'xact_seqno'上刪除,但所有的改變仍然是分佈式的。很困惑! – o2908