IT貓撲網(wǎng):您身邊最放心的安全下載站! 最新更新|軟件分類(lèi)|軟件專(zhuān)題|手機(jī)版|論壇轉(zhuǎn)貼|軟件發(fā)布

您當(dāng)前所在位置:首頁(yè)數(shù)據(jù)庫(kù)MSSQL → 利用SQL Server復(fù)制技術(shù)實(shí)現(xiàn)數(shù)據(jù)同步更新

利用SQL Server復(fù)制技術(shù)實(shí)現(xiàn)數(shù)據(jù)同步更新

時(shí)間:2015/6/28來(lái)源:IT貓撲網(wǎng)作者:網(wǎng)管聯(lián)盟我要評(píng)論(0)

Microsoft sql server 2000復(fù)制的概念:在數(shù)據(jù)庫(kù)之間對(duì)數(shù)據(jù)和數(shù)據(jù)庫(kù)對(duì)象進(jìn)行復(fù)制和分發(fā)并進(jìn)行同步以確保其一致性的一組技術(shù)。

使用復(fù)制可以將數(shù)據(jù)分發(fā)到不同位置,通過(guò)局域網(wǎng)、使用撥號(hào)連接、通過(guò) Internet 分發(fā)給遠(yuǎn)程或移動(dòng)用戶。復(fù)制還能夠使用戶提高應(yīng)用程序性能,根據(jù)數(shù)據(jù)的使用方式物理分隔數(shù)據(jù)(例如,將聯(lián)機(jī)事務(wù)處理 (OLTP) 和決策支持系統(tǒng)分開(kāi)),或者跨越多個(gè)服務(wù)器分布數(shù)據(jù)庫(kù)處理。

SQL復(fù)制的基本元素包括:

發(fā)布服務(wù)器、訂閱服務(wù)器、分發(fā)服務(wù)器、發(fā)布、項(xiàng)目。

發(fā)布服務(wù)器

發(fā)布服務(wù)器是提供數(shù)據(jù)以便復(fù)制到其它服務(wù)器的服務(wù)器。發(fā)布服務(wù)器可以具有一個(gè)或多個(gè)發(fā)布,每個(gè)發(fā)布代表一組邏輯相關(guān)的數(shù)據(jù)。除了指定其中哪些數(shù)據(jù)需要復(fù)制之外,發(fā)布服務(wù)器還檢測(cè)事務(wù)復(fù)制期間發(fā)生更改的數(shù)據(jù)并維護(hù)有關(guān)此站點(diǎn)上所有發(fā)布的信息。

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

分發(fā)服務(wù)器是作為分發(fā)數(shù)據(jù)庫(kù)宿主并存儲(chǔ)歷史數(shù)據(jù)和/或事務(wù)以及元數(shù)據(jù)的服務(wù)器。分發(fā)服務(wù)器的角色根據(jù)執(zhí)行的復(fù)制類(lèi)型而不同。有關(guān)更多信息,請(qǐng)參見(jiàn)復(fù)制類(lèi)型。

遠(yuǎn)程分發(fā)服務(wù)器是獨(dú)立于發(fā)布服務(wù)器并配置為復(fù)制的分發(fā)服務(wù)器的服務(wù)器。本地分發(fā)服務(wù)器是既配置為復(fù)制的發(fā)布服務(wù)器又配置為復(fù)制的分發(fā)服務(wù)器的服務(wù)器。

訂閱服務(wù)器

訂閱服務(wù)器是接收復(fù)制數(shù)據(jù)的服務(wù)器。訂閱服務(wù)器訂閱的是發(fā)布而不是發(fā)布中分離的項(xiàng)目;并且訂閱服務(wù)器只訂閱其需要的發(fā)布,而不是發(fā)布服務(wù)器上所有可用的發(fā)布。根據(jù)復(fù)制的類(lèi)型和所選擇的復(fù)制選項(xiàng),訂閱服務(wù)器還可以將數(shù)據(jù)更改傳播回發(fā)布服務(wù)器或?qū)?shù)據(jù)重新發(fā)布到其它訂閱服務(wù)器。

發(fā)布

發(fā)布是一個(gè)數(shù)據(jù)庫(kù)中的一個(gè)或多個(gè)項(xiàng)目的集合。這種多個(gè)項(xiàng)目的分組使得指定邏輯相關(guān)的一組數(shù)據(jù)和數(shù)據(jù)庫(kù)對(duì)象以一起復(fù)制變得更容易。

項(xiàng)目

項(xiàng)目是指定要復(fù)制的數(shù)據(jù)表、數(shù)據(jù)分區(qū)或數(shù)據(jù)庫(kù)對(duì)象。項(xiàng)目可以是完整的表、某幾列(使用垂直篩選)、某幾行(使用水平篩選)、存儲(chǔ)過(guò)程或視圖定義、存儲(chǔ)過(guò)程的執(zhí)行、視圖、索引視圖或用戶定義函數(shù)。

訂閱

訂閱是對(duì)數(shù)據(jù)或數(shù)據(jù)庫(kù)對(duì)象的復(fù)本的請(qǐng)求。訂閱定義將接收的發(fā)布和接收的時(shí)間、地點(diǎn)。訂閱的同步或數(shù)據(jù)分發(fā)可以由發(fā)布服務(wù)器(強(qiáng)制訂閱)或訂閱服務(wù)器(請(qǐng)求訂閱)請(qǐng)求。發(fā)布可以支持強(qiáng)制訂閱和請(qǐng)求訂閱的混合。

SQL復(fù)制的工作原理

SQL SERVER 主要采用出版物、訂閱的方式來(lái)處理復(fù)制。源數(shù)據(jù)所在的服務(wù)器是出版服務(wù)器,負(fù)責(zé)發(fā)表數(shù)據(jù)。出版服務(wù)器把要發(fā)表的數(shù)據(jù)的所有改變情況的拷貝復(fù)制到分發(fā)服務(wù)器分發(fā)服務(wù)器包含有一個(gè)分發(fā)數(shù)據(jù)庫(kù),可接收數(shù)據(jù)的所有改變,并保存這些改變,再把這些改變分發(fā)給訂閱服務(wù)器。

SQL SERVER復(fù)制技術(shù)類(lèi)型,三種復(fù)制技術(shù),分別是

1、快照復(fù)制

2、事務(wù)復(fù)制

3、合并復(fù)制

下介紹實(shí)現(xiàn)復(fù)制的步驟。(以快照復(fù)制為例)

準(zhǔn)備工作:

1.發(fā)布服務(wù)器,訂閱服務(wù)器都創(chuàng)建一個(gè)同名的windows用戶,并設(shè)置相同的密碼,做為發(fā)布快照文件夾的有效訪問(wèn)用戶。

--我的電腦

--控制面板

--管理工具

--計(jì)算機(jī)管理

--用戶和組

--右鍵用戶

--新建用戶

--建立一個(gè)隸屬于administrator組的登陸windows的用戶

2.在發(fā)布服務(wù)器上,新建一個(gè)共享目錄,做為發(fā)布的快照文件的存放目錄,操作:

我的電腦--D:\ 新建一個(gè)目錄,名為: PUB

--右鍵這個(gè)新建的目錄

--屬性--共享

--選擇"共享該文件夾"

--通過(guò)"權(quán)限"按紐來(lái)設(shè)置具體的用戶權(quán)限,保證第一步中創(chuàng)建的用戶具有對(duì)該文件夾的所有權(quán)限

--確定

3.設(shè)置SQL代理(SQLSERVERAGENT)服務(wù)的啟動(dòng)用戶(發(fā)布/訂閱服務(wù)器均做此設(shè)置)

開(kāi)始--程序--管理工具--服務(wù)

--右鍵SQLSERVERAGENT

--屬性--登陸--選擇"此賬戶"

--輸入或者選擇第一步中創(chuàng)建的windows登錄用戶名

--"密碼"中輸入該用戶的密碼

4.設(shè)置SQL Server身份驗(yàn)證模式,解決連接時(shí)的權(quán)限問(wèn)題(發(fā)布/訂閱服務(wù)器均做此設(shè)置)

企業(yè)管理器

--右鍵SQL實(shí)例--屬性

--安全性--身份驗(yàn)證

--選擇"SQL Server 和 Windows"

--確定

5.在發(fā)布服務(wù)器和訂閱服務(wù)器上互相注冊(cè)

企業(yè)管理器

--右鍵SQL Server組

--新建SQL Server注冊(cè)。..

--下一步--可用的服務(wù)器中,輸入你要注冊(cè)的遠(yuǎn)程服務(wù)器名--添加

--下一步--連接使用,選擇第二個(gè)"SQL Server身份驗(yàn)證"

--下一步--輸入用戶名和密碼

--下一步--選擇SQL Server組,也可以創(chuàng)建一個(gè)新組

--下一步--完成

6.對(duì)于只能用IP,不能用計(jì)算機(jī)名的,為其注冊(cè)服務(wù)器別名

(在連接端配置,比如,在訂閱服務(wù)器上配置的話,服務(wù)器名稱(chēng)中輸入的是發(fā)布服務(wù)器的IP)

開(kāi)始--程序--Microsoft SQL Server--客戶端網(wǎng)絡(luò)實(shí)用工具

--別名--添加

--網(wǎng)絡(luò)庫(kù)選擇"tcp/ip"--服務(wù)器別名輸入SQL服務(wù)器名

--連接參數(shù)--服務(wù)器名稱(chēng)中輸入SQL服務(wù)器ip地址

--如果你修改了SQL的端口,取消選擇"動(dòng)態(tài)決定端口",并輸入對(duì)應(yīng)的端口號(hào)

正式開(kāi)始:

1.配置發(fā)布服務(wù)器

a. 選中指定 [服務(wù)器] 節(jié)點(diǎn)

b. 從 [工具] 下拉菜單的 [復(fù)制] 子菜單中選擇 [發(fā)布、訂閱服務(wù)器和分發(fā)] 命令

c. 系統(tǒng)彈出一個(gè)對(duì)話框點(diǎn) [下一步] 然后看著提示操作

--直到"指定快照文件夾"

--在"快照文件夾"中輸入準(zhǔn)備工作中創(chuàng)建的目錄: \\《服務(wù)器名》\pub

一[下一步] 直操作到完成。

d. 當(dāng)完成了出版服務(wù)器的設(shè)置以后系統(tǒng)會(huì)為該服務(wù)器的樹(shù)形結(jié)構(gòu)中添加一個(gè)復(fù)制監(jiān)視器同時(shí)也生成一個(gè)分發(fā)數(shù)據(jù)庫(kù)(distribution)

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

a. 選中指定的服務(wù)器

b. 從 [工具] 菜單的 [復(fù)制] 子菜單中選擇 [創(chuàng)建和管理發(fā)布] 命令。此時(shí)系統(tǒng)會(huì)彈出一個(gè)對(duì)話框

c. 選擇要?jiǎng)?chuàng)建發(fā)布的數(shù)據(jù)庫(kù),然后單擊 [創(chuàng)建發(fā)布]

d. 在 [創(chuàng)建發(fā)布向?qū)В?的提示對(duì)話框中單擊 [下一步] 系統(tǒng)就會(huì)彈出一個(gè)對(duì)話框。對(duì)話

框上的內(nèi)容是復(fù)制的三個(gè)類(lèi)型。我們現(xiàn)在選第一個(gè)也就是默認(rèn)的快照發(fā)布(其他兩個(gè)

大家可以去看看幫助)

e. 單擊 [下一步] 系統(tǒng)要求指定可以訂閱該發(fā)布的數(shù)據(jù)庫(kù)服務(wù)器類(lèi)型,SQLSERVER允許在

不同的數(shù)據(jù)庫(kù)如 oracleaccess之間進(jìn)行數(shù)據(jù)復(fù)制。但是在這里我們選擇運(yùn)行

"SQL SERVER 2000"的數(shù)據(jù)庫(kù)服務(wù)器

f. 單擊 [下一步] ,選擇要發(fā)布的對(duì)象(如表,視圖,存儲(chǔ)過(guò)程,一般是表)

g. 然后 [下一步] 直到操作完成。當(dāng)完成出版物的創(chuàng)建后創(chuàng)建出版物的數(shù)據(jù)庫(kù)也就變成了一個(gè)共享數(shù)據(jù)庫(kù)。

---------------------------------------------------------------------------

3.設(shè)計(jì)訂閱

a. 選中指定的訂閱服務(wù)器

b. 從 [工具] 下拉菜單中選擇 [復(fù)制] 子菜單的 [請(qǐng)求訂閱]

c. 按照提示單擊 [下一步] 操作直到系統(tǒng)會(huì)提示檢查SQL SERVER代理服務(wù)的運(yùn)行狀態(tài),執(zhí)行

復(fù)制操作的前提條件是SQL SERVER代理服務(wù)必須已經(jīng)啟動(dòng)。

d. 單擊 [完成] 完成訂閱操作。

----------------------------------------------------------------------------

完成上面的步驟其實(shí)復(fù)制也就是成功了。但是如何來(lái)知道復(fù)制是否成功了呢?

這里可以通過(guò)這種方法來(lái)快速看是否成功。

展開(kāi)出版服務(wù)器下面的復(fù)制——發(fā)布內(nèi)容——右鍵發(fā)布內(nèi)容——屬性——擊活——狀態(tài)然后點(diǎn)立即運(yùn)行代理程序接著點(diǎn)代理程序?qū)傩該艋钫{(diào)度

把調(diào)度設(shè)置為每一天發(fā)生,每一分鐘,在0:00:00和23:59:59之間。

接下來(lái)就是判斷復(fù)制是否成功了,打開(kāi)C:\Program Files\Microsoft SQL Server\MSSQL\REPLDATA\unc\XIAOWANGZI_database_database下面,觀察是否有一些以時(shí)間做為文件名的文件夾(幾乎一分中產(chǎn)生一個(gè))。

關(guān)鍵詞標(biāo)簽:SQL Server

相關(guān)閱讀

文章評(píng)論
發(fā)表評(píng)論

熱門(mén)文章 SqlServer2005對(duì)現(xiàn)有數(shù)據(jù)進(jìn)行分區(qū)具體步驟SqlServer2005對(duì)現(xiàn)有數(shù)據(jù)進(jìn)行分區(qū)具體步驟sql server系統(tǒng)表?yè)p壞的解決方法sql server系統(tǒng)表?yè)p壞的解決方法MS-SQL2005服務(wù)器登錄名、角色、數(shù)據(jù)庫(kù)用戶MS-SQL2005服務(wù)器登錄名、角色、數(shù)據(jù)庫(kù)用戶Access、SQL Server、Oracle常見(jiàn)應(yīng)用的區(qū)別Access、SQL Server、Oracle常見(jiàn)應(yīng)用的區(qū)別

相關(guān)下載

人氣排行 如何遠(yuǎn)程備份(還原)SQL2000數(shù)據(jù)庫(kù)SQL2000數(shù)據(jù)庫(kù)遠(yuǎn)程導(dǎo)入(導(dǎo)出)數(shù)據(jù)配置和注冊(cè)O(shè)DBC數(shù)據(jù)源-odbc數(shù)據(jù)源配置教程SQL2000和SQL2005數(shù)據(jù)庫(kù)服務(wù)端口查看或修改SQL Server 2005降級(jí)到2000的正確操作步驟修改Sql Server唯一約束教程淺談JSP JDBC來(lái)連接SQL Server 2005的方法SQL Server創(chuàng)建表語(yǔ)句介紹