下面具體說一下步驟,首先我們說一下發布服務器上的准備工作和條件,先把Sql Server代理設置為自啟動;對事務發布,確保數據庫表要有主鍵;新建一個文件夾,設置為共享。
首先我們設置一下配置分發,如果之前做過配置分發設置,就是下圖的效果,可以直接創建本地發布。

接着,一直下一步即可,在快照文件夾出注意一下
下一步,如果一開始沒有設置Sql Server代理為自啟動,就會提示這個
下一步,這個地方填寫一開始創建好的共享文件夾地址,如F:\ShareFolder
下一步,默認填寫
下一步,勾選配置分發
點完成,可以看到:
至此配置分發已經好了,接着就是創建本地發布了,
下一步選擇要同步的數據庫
這個地方選擇事務發布,具體的每個發布可以看說明,后面也會講到
下一步,如果你的數據庫中有視圖等,也會顯示出來,勾選你要同步的對象
下一步,添加篩選項,如果需要就添加,不需要直接下一步,添加的界面右圖
這里不做添加,下一步,勾選第一項
下一步,點安全設置,如下設置:
確定后如下:
下一步,勾選創建發布,下一步,填寫一個發布名稱
點完成
至此本地發布就創建好了,這時再展開復制-本地發布可以看到剛剛創建好的本地發布test
創建好了本地發布就要創建訂閱了,為了方便就在本機做訂閱,如果在其他服務器上做訂閱流程是一樣的只是在選擇發布服務器時有點區別,下面會講到
同樣下一步,如果這地方是在本機訂閱,則直接選擇數據庫和發布test,如果是訂閱其他服務器上的發布,可以展開發布服務器,選擇“查找sql server 發布服務器”
這個時候會彈出數據庫登錄界面,這里需要注意一下,服務器登錄要用計算機名稱,不能用IP地址或別名,還要注意,這個地方要鏈接發布服務器,因為確保發布服務器上數據庫允許遠程鏈接。鏈接上之后會在剛才的界面展示這個服務器上的發布,選擇好發布,下一步即可,勾選第一項。
下一步,勾選上訂閱服務器,選擇訂閱數據庫,只要選擇新建數據庫就可以了。這時會彈出創建數據庫對話框,創建一個數據庫,
下一步,設置安全性
確定,下一步,同步計划選連續運行,初始化時間選擇立即
下一步,選擇立即創建訂閱,一直下一步即可,至完成。這個時候展開復制下的本地發布和本地訂閱,可以看到發布和訂閱都存在了。而且剛才創建的訂閱數據庫TestDataDY在數據庫中也存在了。
所有的工作都已經做好了,下面就是測試了。因為我們是把TestData作為發布的數據庫,TestDataDY是訂閱的數據庫,因此我們在TestData數據庫的表中添加或修改數據庫,看TestDataDY數據庫中的數據是否也跟着響應的改變。測試的過程可以自己手動的做一下。
接下來我們說一下其他的東西,第一個就是一開始我們創建的共享文件夾,他叫快照文件夾,顧名思義就是用來存放快照的。我們可以找到這個文件夾並打開看一下,一開始是空的文件夾,當我創建了發布和訂閱以后,在此打開可以看到,有四個以發布的數據庫命名的文件。這些就是數據庫TestData中的表的初始架構和數據。
回顧上面創建訂閱的時候創建的訂閱數據庫,我們只是創建了數據庫,而數據庫中的表、字段等我們沒有創建,當我們創建好訂閱以后,這些表和字段都自動的創建好了,就是通過快照文件夾中的初始架構和數據來完成的。
還有一個就是分發數據庫distribution,他是可以找到的,他存在系統數據庫中。
可以看到這個數據就一張表和一個字段,這個數據庫主要的作用是用來存儲歷史記錄、錯誤和新事務。
接着就是發布類型了,發布類型有快照發布,事務發布,具有可更新訂閱的事務發布和合並發布。
快照發布:發布服務器按照預定的時間間隔向訂閱服務器發送已發布數據的快照。他的工作機制是:發布服務器,將要發布的數據庫整個做一個快照;訂閱服務器的快照代理程序把發布服務器的快照讀取過來,放在本地的快照文件夾內;訂閱服務器的發布代理程序把快照文件夾中的快照發布到訂閱服務器上。歷史記錄和快照記錄在分發服務器中。
事物發布:在訂閱服務器收到已發布數據的初始快照后,發布服務器將事務流式傳輸到訂閱服務器。他的基本原理:初始數據和架構(通過快照復制來完成),從這里可以體現出來快照復制,是所有復制的基礎 。快照復制在訂閱服務器上建立了訂閱數據庫;發布服務器的數據修改后,寫事務日志;分發服務器的日志讀取代理讀取發生改變的數據的事務日志,把這些事務日志保存在發布服務器的發布數據庫中;分發服務器的分發代理程序 將分發數據庫中的事務日志分發到各個訂閱服務器上,然后把歷史記錄和錯誤記錄在分發數據庫中。
具有可更新訂閱的事務發布: SQL Server 訂閱服務器收到已發布數據的初始快照后,發布服務器將事務流式傳輸到訂閱服務器。來自訂閱服務器的事務被應用於發布服務器。
合並發布:在訂閱服務器收到已發布數據的初始快照后,發布服務器和訂閱服務器可以獨立更新已發布數據。更改會定期合並。Microsoft SQL Server Compact Edition 只能訂閱合並發布。
這幾個發布的區別是:
1、快照發布和事務發布是單向的,即A->B;合並發布是雙向的,A->B,B->A。
2、快照復制是復制所有的數據,而事務復制和合並復制是復制數據的更改。
以上就是復制的整個流程了,不過這個只是簡單是數據同步