實(shí)戰(zhàn) SQL Server 2000 復(fù)制 訂閱

適用SQL Server2000-->SQL Server 2022



數(shù)據(jù)庫學(xué)習(xí) 【2023-10-28 15:09】


文章來源:https://www.cnblogs.com/chenmh/p/4487766.html

概述  

   配置復(fù)制就沒有數(shù)據(jù)庫鏡像和AlwaysOn的要求那么高,只需要兩臺(tái)服務(wù)器能通過TCP進(jìn)行通訊即可,

兩臺(tái)服務(wù)器操作系統(tǒng)和SQL版本都可以不完全一致,而且兩臺(tái)服務(wù)器也不需要加入域,所以配置復(fù)制訂閱就簡單多了,

但是復(fù)制訂閱主要是針對(duì)數(shù)據(jù)表而不能像鏡像和AlwaysOn那樣配置整個(gè)數(shù)據(jù)庫,這也是它的缺點(diǎn)吧。


接下來主要除了前面介紹配置復(fù)制訂閱后面還會(huì)解釋一些需要注意的事項(xiàng)。

復(fù)制數(shù)據(jù)庫:AdventureWorks2008R2


 


注意:


1.發(fā)布的表必須要存在主鍵和聚集索引,之前遇到過上G級(jí)別的表因?yàn)闆]有聚集索引導(dǎo)致訂閱失敗。

2.一個(gè)發(fā)布項(xiàng)目不要包含的表不要太大,由于發(fā)布生成快照的過程中會(huì)鎖表同時(shí)會(huì)堵塞相應(yīng)表的進(jìn)程,

    如果表太大導(dǎo)致生成快照的時(shí)間過長勢必會(huì)導(dǎo)致服務(wù)器堵塞非常的嚴(yán)重有時(shí)候還會(huì)出現(xiàn)很嚴(yán)重的問題?。?!,可以通過多創(chuàng)建幾個(gè)發(fā)布項(xiàng)目來解決。

3.發(fā)布服務(wù)器和分發(fā)服務(wù)器分開,減少發(fā)布服務(wù)器的壓力。

4.注意一些特殊字符類型的字段會(huì)導(dǎo)致創(chuàng)建訂閱失敗,這里面可以將字段的數(shù)據(jù)類型改成unicode類型的字段,

   unicode類型的字段在SQLServer中以N開頭,比如nchar、nvarchar、ntext等。

5.如果要?jiǎng)?chuàng)建請(qǐng)求訂閱,那么快照文件夾路徑需要配置共享文件夾。


 


目錄

 概述

 配置分發(fā)服務(wù)器

 創(chuàng)建發(fā)布

 創(chuàng)建訂閱

 查看配置

 添加新的發(fā)布表

 總結(jié)

一、配置分發(fā)服務(wù)器

將分發(fā)服務(wù)器和發(fā)布服務(wù)器配置為同一臺(tái)服務(wù)器。


1.復(fù)制-本地發(fā)布-配置

01.png



2.配置分發(fā)向?qū)?下一步

02.png



3.CLU11是發(fā)布服務(wù)器,這里選擇將CLU11同時(shí)配置為分發(fā)服務(wù)器,會(huì)在CLU11上面創(chuàng)建分發(fā)數(shù)據(jù)庫

03.png



4.選擇快照路徑,默認(rèn)路徑即可

04.png



注意:如果要?jiǎng)?chuàng)建請(qǐng)求訂閱,那么這里需要配置共享文件夾


5.分發(fā)數(shù)據(jù)庫名稱和分發(fā)數(shù)據(jù)庫數(shù)據(jù)文件、日志文件路徑

05.png



6.默認(rèn)下一步

06.png



7.默認(rèn)完成

07.png



8.完成分發(fā)服務(wù)器配置

08.png



二、創(chuàng)建發(fā)布

1.復(fù)制-本地發(fā)布-新建發(fā)布 

11.png



2.選擇需要發(fā)布的數(shù)據(jù)庫

12.png



3.選擇發(fā)布類型-事務(wù)發(fā)布


發(fā)布類型總共有四種,這里配置最常用的事務(wù)發(fā)布類型

13.png



4.選擇需要配置發(fā)布的表


創(chuàng)建發(fā)布的表一定要存在主鍵列

14.png



5.查看發(fā)布的項(xiàng)目屬性,默認(rèn)配置即可

15.png



6.在表項(xiàng)目屬性中主要是配置將哪些對(duì)象和設(shè)置應(yīng)用的訂閱服務(wù)器,


在屬性中我們可以看到會(huì)復(fù)制聚集索引、排序規(guī)則、DML操作、DLL操作等應(yīng)用到訂閱服務(wù)器,


因?yàn)橐话惆l(fā)布服務(wù)器和訂閱服務(wù)器的業(yè)務(wù)應(yīng)用是不一樣的,所以默認(rèn)只會(huì)復(fù)制這些主要的對(duì)象,

不會(huì)復(fù)制非聚集索引外鍵等,因?yàn)樵谟嗛喎?wù)器可能需要建的它需要的業(yè)務(wù)場景的索引。

16.png



7.不配置篩選,默認(rèn)下一步

17.png



8.勾選立即創(chuàng)建快照并保持可用狀態(tài)

18.png



9.配置代理安全性賬戶

19.png



10.用于連接到發(fā)布服務(wù)器的rep賬戶必須擁有AdventureWorks2008R2數(shù)據(jù)庫的所有者權(quán)限,服務(wù)器級(jí)別的權(quán)限public即可

20.png



11.創(chuàng)建發(fā)布-下一步

21.png



12.輸入發(fā)布項(xiàng)目名稱

22.png



13.完成發(fā)布數(shù)據(jù)庫配置

23.png



三、創(chuàng)建訂閱

1.在訂閱服務(wù)器中-復(fù)制-本地訂閱-新建訂閱 

31.png



2.選擇發(fā)布服務(wù)器-查找SQL Server發(fā)布服務(wù)器

32.png



3.連接CLU11發(fā)布服務(wù)器

33.png



4.由于CLU11服務(wù)器中只配置了一個(gè)發(fā)布,所以默認(rèn)顯示出剛才配置的發(fā)布

34.png



5.配置分發(fā)代理位置-選擇在分發(fā)服務(wù)器上運(yùn)行所有代理


35.png


6.下一步

36.png



7.配置訂閱代理安全性賬戶

37.png



8.連接到訂閱服務(wù)器的賬戶同樣需要訂閱數(shù)據(jù)庫的所有者權(quán)限,服務(wù)器級(jí)別也是Public即可

38.png



9.代理計(jì)劃-連續(xù)運(yùn)行

39.png



10.初始化時(shí)間-立即


40.png


11.創(chuàng)建訂閱

41.png



12.完成訂閱創(chuàng)建

42.png



13.完成

43.png



四、查看配置

1.在發(fā)布服務(wù)器CLU11的路徑下可以找到新生成的快照文件路徑

51.png

 


2.在CLU11發(fā)布服務(wù)器的系統(tǒng)數(shù)據(jù)庫中創(chuàng)建了“distribution”分發(fā)數(shù)據(jù)庫


52.png


3.在訂閱服務(wù)器,訂閱數(shù)據(jù)庫“AdventureWorks2008R2”中生成了發(fā)布的兩張表,


注意:訂閱數(shù)據(jù)庫與發(fā)布數(shù)據(jù)庫不需要一樣,這里不要被誤解

53.png



4.在發(fā)布服務(wù)器的復(fù)制下創(chuàng)建了一個(gè)發(fā)布項(xiàng)目

54.png



5.查看復(fù)制監(jiān)視器,在這里可以配置和查看發(fā)布訂閱和監(jiān)控分發(fā)情況,可以配置警告

55.png



6.發(fā)布屬性-這里可以配置和修改發(fā)布

56.png



7.訂閱屬性-這里可以修改訂閱安全登入賬號(hào)

57.png



8.在發(fā)布服務(wù)器的代理中生成了三個(gè)作業(yè),分別是和分發(fā)有關(guān)的快照日志讀取作業(yè),和發(fā)布有關(guān)的發(fā)布作業(yè),和訂閱有關(guān)的分發(fā)作業(yè)。


58.png


 


五、添加新的發(fā)布表

1. 在復(fù)制監(jiān)視器-我的發(fā)布服務(wù)器-CLU11-右鍵發(fā)布項(xiàng)目-屬性,去掉”僅顯示列表中已選中的項(xiàng)目勾選“


勾選”AWBuildVersion“表,確定保存


創(chuàng)建發(fā)布的表一定要存在主鍵列

61.png



2.復(fù)制監(jiān)視器-我的發(fā)布服務(wù)器-CLU11-右鍵發(fā)布項(xiàng)目-生成快照

62.png



3.在訂閱數(shù)據(jù)庫查看生成的訂閱表

63.png



4.在發(fā)布服務(wù)器的快照文件夾下面可以看到生成了一個(gè)新的快照文件夾

64.png



5.查看訂閱屬性,可以看到分發(fā)歷史記錄

65.png



總結(jié)

 由于將分發(fā)服務(wù)器和發(fā)布服務(wù)器配置在同一臺(tái)服務(wù)器,對(duì)發(fā)布服務(wù)器會(huì)有一定的壓力,

在平時(shí)的操作過程中如果需要對(duì)發(fā)布的表進(jìn)行刪除字段的操作之前首先要查看訂閱表中是否創(chuàng)建了該字段的索引,

如果創(chuàng)建了需要把字段從索引中去掉,否則會(huì)造成發(fā)布訂閱報(bào)錯(cuò)。


友情鏈接:
SQL數(shù)據(jù)庫修復(fù)專家
SQLDBRepair
  • 關(guān)注微博
    聯(lián)系QQ
  • 二維碼
  • 掃一掃加關(guān)注

——信陽市速全網(wǎng)絡(luò)科技有限公司——

版權(quán)所有:信陽市速全網(wǎng)絡(luò)科技有限公司

豫ICP備19030104號(hào)