SQL SERVER2005 複製訂閱功能介紹

轉載網友的一篇博文

一、複製簡介

複製是將數據或數據庫對象從一個數據庫複製和分發到另外一個數據庫,並進行數據同步,從而使源數據庫和目標數據庫保持一致。使用複製,可以在局域網和廣域網、撥號連接、無線連接和 Internet 上將數據分發到不同位置以及分發給遠程或移動用戶。

一組SQL SERVER2005複製有發佈服務器、分發服務器、訂閱服服務器(圖1 複製服務器之間的關係圖)組成,他們之間的關係類似於書報行業的報社或出版社、郵局或書店、讀者之間的關係。以報紙發行爲例說明,發佈服務器類似於報社,報社提供報刊的內容並印刷,是數據源;分發服務器相當於郵局,他將各報社的報刊送(分發)到訂戶手中;訂閱服務器相當於訂戶,從郵局那裏收到報刊。在實際的複製中,發佈服務器是一種數據庫實例,它通過複製向其他位置提供數據,分發服務器也是一種數據庫實例,它起着存儲區的作用,用於複製與一個或多個發佈服務器相關聯的特定數據。每個發佈服務器都與分發服務器上的單個數據庫(稱作分發數據庫)相關聯。分發數據庫存儲複製狀態數據和有關發佈的元數據,並且在某些情況下爲從發佈服務器向訂閱服務器移動的數據起着排隊的作用。在很多情況下,一個數據庫服務器實例充當發佈服務器和分發服務器兩個角色。這稱爲“本地分發服務器”。訂閱服務器是接收復制數據的數據庫實例。一個訂閱服務器可以從多個發佈服務器和發佈接收數據。

(圖1)

複製有三種類:事務複製、快照複製、合併複製。事務複製是將複製啓用後的所有發佈服務器上發佈的內容在修改時傳給訂閱服務器,數據更改將按照其在發佈服務器上發生的順序和事務邊界,應用於訂閱服務器,在發佈內部可以保證事務的一致性。快照複製將數據以特定時刻的瞬時狀態分發,而不監視對數據的更新。發生同步時,將生成完整的快照並將其發送到訂閱服務器。合併複製通常是從發佈數據庫對象和數據的快照開始,並且用觸發器跟蹤在發佈服務器和訂閱服務器上所做的後續數據更改和架構修改。訂閱服務器在連接到網絡時將與發佈服務器進行同步,並交換自上次同步以來發布服務器和訂閱服務器之間發生更改的所有行。

 

二、複製實例

這裏以配置一個事務複製來說明覆制配置過程 

試驗在同一臺機器的二個實例間進行,實例名分別是SERVER01SERVER02 。將SERVER01配置發佈服務器和分發服務器(也就是前面提到的本地分發服務器”),SERVER02配置爲訂閱服務器。在本例中將SERVER01中一個DBCoper庫中person表作爲發佈的數據,在發佈前請確保person表有主鍵、SQL SERVER 代理自動啓動、發佈數據庫是日誌是完整模式。

第一步:完全備份SERVER01 DBCopy數據庫,在SERVER02上恢復DBCopy數據庫(複製前的同步,使用發佈的源和目標數據一致)

第二步:在SERVER01上設置發佈和分發A 在SERVER01的複製節點—>本地發佈右鍵選擇新建訂閱(2)

 

 

()(圖2)

B B 在新建發佈嚮導中首先要求選擇分發服務器,本例選擇本機作爲分發服務器,選擇默認值。(圖3)

 

 

(圖3)

C 嚮導第三步要求選擇快照的路徑,一般情況下選擇默認路徑
D 嚮導第四步選擇發佈的數據庫(如圖四),選擇DBCopy

 

 

(圖4)

 

E 接着選擇發佈的類型,這裏選擇事務複製(如圖5)

 

(圖5)

F 選擇發佈的內容(PERSON),這裏不僅可以發表,還可以發佈其他的數據庫對象,比如函數。在選擇某一個表之後還可以選擇發佈某一列或幾列。在這個步驟下一個界面中可以選擇要發佈的行。

 

 

(圖6)

G 設置發佈的內容之後設置 運行SQL代理的賬號。設置如下:

 

 

(圖7)

H 設置上一步之後,給複製起個名字PersonCopy。到此爲止,發佈和分發已配置成功。(如圖8)

 

 

(圖8)


第三步:配置訂閱。
訂閱有兩種方種,一種是由發佈服務器向訂閱服務器“推”數據,由訂閱服務器去請求訂閱數據。本例在SERVER02上設置請求訂閱。
A 第一步在SERVER02複製節點右擊訂閱,新建訂閱(圖9)

 

 

(圖9)

 

B 選擇發佈服務器,在下拉列表框中選擇查找SQL SERVER 發佈服務器,選擇SERVER01,就可以看到剛纔新建的發佈PersonCopy。如圖(10)

 

(圖10)

C 選擇訂閱方式。(圖11) 這裏選擇請求訂閱

 

 

(圖11)

D 選擇訂閱的本地數據庫(如圖12)。

 

 

(圖12)

E 設置完本地數據庫之後要求設置運行代理的安全性,設置成SQL 代理賬號。完成以上設置後,訂閱已設置完成。

在SERVER01表中插入一條新記錄後,在SERVER02中去檢查是否同步過來。一般來說,幾乎SERVER01執行完了,SERVER02就可以看到更新後的數據。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章