1. 程式人生 > >SQL Server事務複製通過備份檔案進行訂閱初始化

SQL Server事務複製通過備份檔案進行訂閱初始化

1、在釋出伺服器上建立一個釋出。
2、釋出屬性中的訂閱選項,設定允許從備份檔案初始化為true,預設是false。
3、在釋出伺服器上暫停分發日誌的清理作業(否則可能出現事物被清理而無法建立訂閱的錯誤),備份資料庫,釋出伺服器上保留備份檔案,後面要用。
4、在訂閱伺服器上使用剛才的備份還原資料庫,刪除訂閱伺服器上資料庫的觸發器。
5、在釋出伺服器上執行sp_addsubscription儲存過程新增訂閱,指令碼如下:
exec sp_addsubscription
    @publication = N'publicationname',
    @subscriber ='computername/sqlserverinstancename',
    @destination_db = N'subscription_database_name',
    @subscription_type = N'Push',
    @sync_type = N'initialize with backup',
    @backupdevicetype='disk',
    @backupdevicename='c:/db.bak'
6、檢查新新增的訂閱屬性中的安全性->訂閱伺服器連線,確認正確的帳號和密碼,預設是使用代理帳號。
7、檢查代理作業中新新增的複製代理計劃是否已經啟用,計劃類新是否為自動啟動。
8、檢查新新增的訂閱同步狀態,如果沒有啟動就手工啟動一下。
9、在釋出伺服器上啟用分發日誌的清理作業。
10、後期新增新的表需要手動在訂閱伺服器建立表結構,主要先在釋出屬性的專案中勾選新表,再通過表的右鍵選單建立表結構指令碼。