標籤:
原文:SQL Server 複製訂閱
標籤:SQL SERVER/MSSQL SERVER/資料庫/DBA/高效能解決方案/高可用
概述
配置複製就沒有資料庫鏡像和AlwaysOn的要求那麼高,只需要兩台伺服器能通過TCP進行通訊即可,兩台伺服器作業系統和SQL版本都可以不完全一致,而且兩台伺服器也不需要加入域,所以配置複製訂閱就簡單多了,但是複製訂閱主要是針對資料表而不能像鏡像和AlwaysOn那樣配置整個資料庫,這也是它的缺點吧。
接下來主要除了前面介紹配置複製訂閱後面還會解釋一些需要注意的事項。
複製資料庫:AdventureWorks2008R2
目錄
- 概述
- 配置散發者
- 建立發布
- 建立訂閱
- 查看配置
- 添加新的發行資料表
- 總結
配置散發者
將散發者和發行伺服器配置為同一台伺服器。
1.複製-本地發布-配置
2.配置分發嚮導-下一步
3.CLU11是發行伺服器,這裡選擇將CLU11同時配置為散發者,會在CLU11上面建立散發資料庫
4.選擇快照路徑,預設路徑即可
5.散發資料庫名稱和散發資料庫資料檔案、記錄檔路徑
6.預設下一步
7.預設完成
8.完成散發者配置
建立發布
1.複製-本地發布-建立發布
2.選擇需要發布的資料庫
3.選擇發布類型-事務發布
發布類型總共有四種,這裡配置最常用的事務發布類型
4.選擇需要配置發布的表
建立發布的表一定要存在主鍵列
5.查看發布的項目屬性,預設配置即可
6.在表項目屬性中主要是配置將哪些對象和設定應用的訂閱伺服器,
在屬性中我們可以看到會複製叢集索引、定序、DML操作、DLL操作等應用到訂閱伺服器,
因為一般發行伺服器和訂閱伺服器的業務應用是不一樣的,所以預設只會複製這些主要的對象,不會複製非叢集索引外鍵等,因為在訂閱伺服器可能需要建的它需要的業務情境的索引。
7.不配置篩選,預設下一步
8.勾選立即建立快照並保持可用狀態
9.配置代理安全性賬戶
10.用於串連到發行伺服器的rep賬戶必須擁有AdventureWorks2008R2資料庫的所有者許可權,伺服器層級的許可權public即可
11.建立發布-下一步
12.輸入發布項目名稱
13.完成發行集資料庫配置
建立訂閱
1.在訂閱伺服器中-複製-本機訂閱-建立訂閱
2.選擇發行伺服器-尋找SQL Server發行伺服器
3.串連CLU11發行伺服器
4.由於CLU11伺服器中只配置了一個發布,所以預設顯示出剛才配置的發布
5.配置分發代理位置-選擇在散發者上運行所有代理
6.下一步
8.配置訂閱代理安全性賬戶
9.串連到訂閱伺服器的賬戶同樣需要訂閱資料庫的所有者許可權,伺服器層級也是Public即可
10.代理計劃-連續運行
11.初始化時間-立即
12.建立訂閱
13.完成訂閱建立
14.完成
查看配置
1.在發行伺服器CLU11的路徑下可以找到新產生的快照檔案路徑
2.在CLU11發行伺服器的系統資料庫中建立了“distribution”散發資料庫
3.在訂閱伺服器,訂閱資料庫“AdventureWorks2008R2”中產生了發布的兩張表,
注意:訂閱資料庫與發行集資料庫不需要一樣,這裡不要被誤解
4.在發行伺服器的複製下建立了一個發布項目
5.查看複製監視器,在這裡可以配置和查看發布訂閱和監控分發情況,可以配置警告
6.發布屬性-這裡可以配置和修改發布
7.訂閱屬性-這裡可以修改訂閱安全登入帳號
8.在發行伺服器的代理中產生了三個作業,分別是和分發有關的快照日誌讀取作業,和發布有關的發布作業,和訂閱有關的分發作業。
添加新的發行資料表
1. 在複製監視器-我的發行伺服器-CLU11-右鍵發布項目-屬性,去掉”僅顯示列表中已選中的項目勾選“
勾選”AWBuildVersion“表,確定儲存
建立發布的表一定要存在主鍵列
2.複製監視器-我的發行伺服器-CLU11-右鍵發布項目-產生快照
3.在訂閱資料庫查看產生的訂閱表
4.在發行伺服器的快照檔案夾下面可以看到產生了一個新的快照檔案夾
5.查看訂閱屬性,可以看到分發記錄
總結
由於將散發者和發行伺服器配置在同一台伺服器,對發行伺服器會有一定的壓力,在平時的操作過程中如果需要對發布的表進行刪除欄位的操作之前首先要查看訂閱表中是否建立了該欄位的索引,如果建立了需要把欄位從索引中去掉,否則會造成發布訂閱報錯。
SQL Server 高可用方案大全:
SQL Server AlwaysOn:http://www.cnblogs.com/chenmh/p/4484176.html
SQL Server 鏡像:http://www.cnblogs.com/chenmh/p/4452902.html
SQL Server 交易記錄傳輸:http://www.cnblogs.com/chenmh/p/3671030.html
SQL Server 複製:http://www.cnblogs.com/chenmh/p/4487766.html
容錯移轉叢集:http://www.cnblogs.com/chenmh/p/4479304.html
如果文章對大家有協助,請點個推薦,謝謝!!!
備忘: pursuer.chen 部落格:http://www.cnblogs.com/chenmh 本網站所有隨筆都是原創,歡迎大家轉載;但轉載時必須註明文章來源,且在文章開頭明顯處給明連結,否則保留追究責任的權利。 《歡迎交流討論》 |
SQL Server 複製訂閱