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

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

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

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

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

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

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

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

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

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

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

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

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

訂閱服務(wù)器

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

發(fā)布

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

項目

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

訂閱

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

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

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

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

1、快照復(fù)制

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

3、合并復(fù)制

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

準備工作:

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

--我的電腦

--控制面板

--管理工具

--計算機管理

--用戶和組

--右鍵用戶

--新建用戶

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

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

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

--右鍵這個新建的目錄

--屬性--共享

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

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

--確定

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

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

--右鍵SQLSERVERAGENT

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

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

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

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

企業(yè)管理器

--右鍵SQL實例--屬性

--安全性--身份驗證

--選擇"SQL Server 和 Windows"

--確定

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

企業(yè)管理器

--右鍵SQL Server組

--新建SQL Server注冊。..

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

--下一步--連接使用,選擇第二個"SQL Server身份驗證"

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

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

--下一步--完成

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

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

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

--別名--添加

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

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

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

正式開始:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

大家可以去看看幫助)

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

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

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

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

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

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

3.設(shè)計訂閱

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

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

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

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

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

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

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

這里可以通過這種方法來快速看是否成功。

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

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

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

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

相關(guān)閱讀

文章評論
發(fā)表評論

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

相關(guān)下載

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