Sql-Server

計劃重新創建快照並重新初始化訂閱 - SQL 2005

  • October 19, 2009

每月我必須為 SQL 2005 中的複制和重新初始化訂閱生成一個新快照。我真的很想自動化和安排這個,但我沒有太多運氣發現如何。

作為一名 DBA,我幾乎是盲目地在那裡閒逛,我絕對不想搞砸任何事情。有什麼想法嗎?

如果我們知道它是什麼類型的複制以及它是推送訂閱還是拉取訂閱,這將有所幫助。我將在這裡做一些大規模的假設並說您使用以下內容,我認為這是最常見的複制設置:

  • 事務複製
  • 推送訂閱
  • 在出版商處執行的分銷商
  1. 創建計劃以創建數據庫快照

如果您查看分發伺服器上的 SQL 代理作業,您應該會看到一個類似以下名稱的作業:
servername-dbname-publicationname-1
此外,它屬於名為 REPEL-Snapshot 的類別。

當您設置複製時,您將獲得按計劃執行快照的選項。如果您選擇這樣做,您應該在計劃下看到這一點,否則您可能會在其中看到一個一次性計劃,該計劃從您上次執行快照時就沒有啟用。不理會這個時間表,然後根據自己的喜好創建另一個時間表。

2.重新初始化訂閱

這將為所有訂閱者重新初始化發布。您可以隨時創建一個 sql 代理作業來執行它。有關更多詳細資訊,請查看 msdn

exec sp_reinitsubscription @publication = 'publication_name', @subscriber = 'all'

引用自:https://serverfault.com/questions/74379