SQL Server 發布訂閱 發布型別詳解

2022-05-01 13:00:09 字數 2144 閱讀 1394

microsoftsql server 提供了三種複製型別。 每種複製型別都適合於不同應用程式的要求。 根據應用程式需要,可以在拓撲中使用一種或多種複製型別:

為了幫助您選擇適當的複製型別,此主題提供了有關下列內容的資訊:

我們建議您先要通讀方案描述,找出與應用程式要求最匹配的方案,然後單擊鏈結檢視詳細資訊。 如果找不到與業務要求近似匹配的方案,或者希望得到有關複製型別的其他資訊,則請閱讀「複製型別」。 如果應用程式需要在乙個或多個訂閱伺服器上更新,則請閱讀「在訂閱伺服器中更新資料」,以確定可使用的適當技術。

複製方案

複製方案可以分為兩大類: 在伺服器到伺服器環境中複製資料和在伺服器與客戶端間複製資料。 伺服器到伺服器方案使用事務複製(有時也可使用快照複製)實現;伺服器和客戶端方案使用合併複製實現。

資料通常在伺服器之間進行複製,以支援下列應用程式和要求:

方案說明

提高伸縮性和可用性

通過維護不斷更新的資料副本,可以將讀取活動擴充套件到多台伺服器。 執行計畫系統維護和非計畫系統維護期間,應為同一資料維護多個副本以實現資料冗餘,這一點至關重要。 有關詳細資訊,請參閱改善伸縮性和可用性。

資料倉儲和報表

資料倉儲和報表伺服器通常使用聯機事務處理 (oltp) 伺服器中的資料。 使用複製在 oltp 伺服器和報表與決策支援系統之間移動資料。 有關詳細資訊,請參閱資料倉儲和報告。

整合來自多個站點的資料

資料通常從各個遠端辦事處「匯入」總部並在總部進行整合。 同樣,資料也可以從總部複製到遠端辦事處。 有關詳細資訊,請參閱整合來自多個站點(伺服器)的資料。

整合異類資料

有些應用程式要依賴於傳送至或來自非 microsoftsql server 的資料庫的資料。 使用複製整合來自非 sql server 資料庫的資料。 有關詳細資訊,請參閱整合異類資料。

解除安裝批處理

批處理操作由於通常會占用過多資源而無法在 oltp 伺服器上執行。 使用複製將批處理任務解除安裝到專用批處理伺服器上。 有關詳細資訊,請參閱解除安裝批處理。

資料通常在伺服器和客戶端(包括工作站、可攜式電腦、tablet 和設定)之間複製,以支援下列應用程式:

方案說明

與移動使用者交換資料

許多應用程式要求資料可用於遠端使用者,包括銷售人員、送貨司機等。 這些應用程式包括客戶關係管理 (crm) 應用程式、銷售自動化 (sfa) 應用程式和現場自動化 (ffa) 應用程式。 有關詳細資訊,請參閱與移動使用者交換資料。

消費者銷售點 (pos) 應用程式

pos 應用程式(如結算終端和 atm 機)要求將資料從遠端站點複製到中心站點。 有關詳細資訊,請參閱使用者銷售點 (pos) 應用程式。

整合來自多個站點的資料

應用程式通常整合來自多個站點的資料。 例如,支援區域辦事處的應用程式可能要求資料在區域辦事處和總部之間單向或雙向流動。 有關詳細資訊,請參閱整合來自多個站點(客戶端)的資料。

複製型別

快照處理通常用於為事務和合併發布提供初始的資料集和資料庫物件,但快照複製還可為其自身所用。 當符合以下乙個或多個條件時,使用快照複製本身是最合適的:

在資料更改量很大,但很少發生更改時,快照複製是最合適的。 例如,如果某銷售組織維護乙個產品**列表且這些**每年要在固定時間進行一兩次完全更新,那麼建議在資料更改後複製完整的資料快照。

事務複製通常用於伺服器到伺服器環境中,在以下各種情況下適合採用事務複製:

預設情況下,事務發布訂閱伺服器應作唯讀處理,因為更改並不傳播回發布伺服器。 但是,事務複製確實提供了允許在訂閱伺服器上進行更新的選項。 有關詳細資訊,請參閱本主題中的「在訂閱伺服器中更新資料」部分。

合併複製通常用於伺服器到客戶端的環境中。 合併複製適用於下列各種情況:

合併複製允許不同站點自主工作,並在以後將更新合併成乙個統一的結果。 由於更新是在多個節點上進行的,同一資料可能由發布伺服器和多個訂閱伺服器進行了更新。 因此,在合併更新時可能會產生衝突,合併複製提供了多種處理衝突的方法。

在訂閱伺服器上更新資料

下列型別的複製和複製選項允許在訂閱伺服器上進行更改,並使這些更改流向發布伺服器:

複製型別

何時使用...

合併複製

有關詳細資訊,請參閱合併複製概述和合併複製的工作機制。

對等事務複製

有關詳細資訊,請參閱對等事務複製。

帶有更新訂閱的事務複製

有關詳細資訊,請參閱事務複製的可更新訂閱。

SqlServer發布訂閱

我們在開發系統的時候,經常會遇到高併發的問題,還有高可用性和安全性方面的考慮,需要用讀寫分離的方案來解決問題。也就是在我們使用資料庫比較多,更新少而查詢比較多的情況下使用讀寫分離,實現提高效能,減少資料庫壓力。為啥要用讀寫分離呢?因為資料庫的 寫 操作是比較耗時的 但是資料庫的 讀 操作卻很快。所以...

SQL SERVER發布與訂閱

一.配置分發 1.配置分發伺服器,注 配置發布與訂閱,連線sqlserver必須用伺服器名登入 2.配置分發 3.選擇分發伺服器 4.選擇快照資料夾 5.設定此資料夾的讀寫許可權為everyone 6.選擇分發資料庫路徑 7.配置分發 8.配置分發 9.配置分發完成 二.新建發布 1 新建發布 2 ...

SQLServer 刪除發布與訂閱

在sqlserver中使用右鍵刪除單獨的發布或者訂閱時,有時候刪除不乾淨。顯示刪除成功但是實際上覆制還是存在的。這時候如果要從新建立該錶的訂閱,會提示該錶以用於複製。以下語句經過測試是可以清除成功的。但是有個bug 如果使用第三個sp removedbreplication清除發布或者訂閱的複製物件...