天天看點

SQLServer 訂閱過期解決方法

由于分發資料庫執行一個較長的事務,達到了系統預定的72小時,導緻了該訂閱過期,資料庫分發代理已不可再啟用,提示錯誤如下:

SQLServer 訂閱過期解決方法

錯誤資訊:已将此(這些)訂閱标記為不活動,必須将其重新初始化。需要删除 NoSync 訂閱,然後重新建立它們

右鍵訂閱,發現該訂閱已處于不活的狀态!~

SQLServer 訂閱過期解決方法

怎麼解決?難道要重新初始化??!

SQLServer 訂閱過期解決方法

執行之後,重新關閉和啟動該分發代理作業,發現沒有作用!~提示還是一樣!~後來發現,如果訂閱過期,該存儲過程是無法更改的,更改無效!~

執行之後,重新關閉和啟動該分發代理作業,很快,複制正常了!~

SQLServer 訂閱過期解決方法
SQLServer 訂閱過期解決方法

在釋出和訂閱庫測試操作資料,同步正常!總是完成了!~

注:即使訂閱過期或處于不活動狀态,訂閱伺服器中的更新仍會傳播到釋出伺服器中。

為了避免過期導緻的問題,有兩種方法設定:

1. 禁用“過期的訂閱清除” 作業;

2. 設定更長的保存期限。

SQLServer 訂閱過期解決方法
SQLServer 訂閱過期解決方法