程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> SqlServer2005數據庫同步配置詳解(中)

SqlServer2005數據庫同步配置詳解(中)

編輯:關於SqlServer

一:  數據復制角色  
 

 


 

  復制服務有三個角色,分別是發布服務器,分發服務器和訂閱服務器。他們分別做不同的工作。就像我們日常買書和報紙的概念是一樣的。

  發布服務器: 也稱為出版服務器,主要負責數據的發布和出版工作。這個角色就好比我們的出版社或者報社。

  分發服務器: 主要負責將發布服務器的內容分發給訂閱者。他是連接發布服務器和訂閱服務器的橋梁。這個角色就好比我們的郵遞員,將書和報紙送到我們的手裡。

  訂閱服務器: 主要負責接收發布的內容。這個角色就好比我們自己訂閱書和報紙,是一個訂閱者的角色。

二:數據訂閱模式

  數據訂閱的模式有推式訂閱和拉式訂閱兩種。推式訂閱主要是分發服務器將數據推給訂閱服務器。 拉式訂閱是訂閱服務器主動向分發服務器取數據。

  這就好比我們自己訂閱雜志和報紙一樣,如果人家送貨上門,這就是推式訂閱,消耗的是分發服務器的資源,也就是消耗送貨人員的資源。如果是拉式訂閱,我們就需要自己到書店去購買,這樣消耗的就是我們自己的資料。消耗的是訂閱服務器的資源,

 三:數據發布類型

  數據發布類型可發為四種:
 
  快照發布
  發布服務器按預定的時間間隔向訂閱服務器發送已發布數據的快照。
 

 

當符合以下一個或多個條件時,使用快照復制本身是最合適的:

  ●很少更改數據。

  ● 在一段時間內允許具有相對發布服務器已過時的數據副本。

  ●復制少量數據。

  ●在短期內出現大量更改

事務發布

在訂閱服務器收到已發布數據的初始快照後,發布服務器將事務流式傳輸到訂閱服務器。


  具有可更新訂閱的事務發布
在 SQL Server 訂閱服務器收到已發布數據的初始快照後,發布服務器將事務流式傳輸到訂閱服務器。來自訂閱服務器的事務被應用於發布服務器。
 


  上述的這兩種發布方式可以歸結為一種發布方式。不同之處在:事務發布類型下,在訂閱服務器上發生的任何改變將不會應用到發布服務器上;
而“具有可更新訂閱的事務發布”類型,訂閱服務器上的任何操作將會同步到發布服務器上。

 

事務性復制通常用於服務器到服務器環境中,在以下各種情況下適合采用事務性復制:

●希望發生增量更改時將其傳播到訂閱服務器。

●從發布服務器上發生更改,至更改到達訂閱服務器,應用程序需要這兩者之間的滯後時間較短。

●應用程序需要訪問中間數據狀態。例如,如果某一行更改了五次,事務性復制將允許應用程序響應每次更改(例如,激發觸發器),而不只是響應該行最終的數據更改。

●發布服務器有大量的插入、更新和刪除活動。


合並發布

  在訂閱服務器收到已發布數據的初始快照後,發布服務器和訂閱服務器可以獨立更新已發布數據。更改會定期合並。Microsoft SQL Server Compact Edition 只能訂閱合並發布。

  
 

合並復制通常用於服務器到客戶端的環境中。合並復制適用於下列各種情況:

  ● 多個訂閱服務器可能會在不同時間更新同一數據,並將其更改傳播到發布服務器和其他訂閱服務器。

  ● 訂閱服務器需要接收數據,脫機更改數據,並在以後與發布服務器和其他訂閱服務器同步更改。

  ●每個訂閱服務器都需要不同的數據分區。

  ●可能會發生沖突,並且在沖突發生時,您需要具有檢測和解決沖突的能力。

  ●應用程序需要最終的數據更改結果,而不是訪問中間數據狀態。例如,如果在訂閱服務器與發布服務器進行同步之前,訂閱服務器上的行更改了五次,則該行在發布服務器上僅更改一次來反映最終數據更改(也就是第五次更改的值)。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved