
同構或異構數據庫的數據實時同步
目錄
同構或異構數據庫的數據實時同步 ........................................ 錯誤!未定義書簽。
目錄 .............................................................. 錯誤! 未定義書簽。
一、 術語解釋: .................................................. 錯誤!未定義書簽。
二、 同構數據庫的同步: .......................................... 錯誤!未定義書簽。
1.
2.
三、 異構數據庫的同步 ............................................ 錯誤!未定義書簽。
建立發布服務器 .............................................. 錯誤!未定義書簽。
新建訂閱服務器 .............................................. 錯誤!未定義書簽。
1. MSDTC
2.
3.
的配置 .............................................. 錯誤!未定義書簽。
創建鏈接服務器 ............................................... 錯誤!未定義書簽。
創建觸發器 ................................................... 錯誤!未定義書簽。
術語解釋:
同構: 需要同步的兩張表一模一樣
異構: 需要同步的兩張表結構不一樣
主:本文所說的數據同步兩個數據庫是部署在不同的服務器上。
同構數據庫的同步:
這里簡單介紹一下,主要采用的 自帶的數據復制技術,我們這里采
SQLServer2005
用數據快照的方式同步。復制中涉及到分布式服務器部署的概念,涉及到發布服務器、 分發服務器以及
訂閱服務器。
前提:因為需要用到 劃作業,所以需要開啟 代理服務,點 擊運行鍵
SQLSERVESQLSERVE
R
入 ,進入服務界面,啟動 務, 并設置為自動啟
SQL Server Age nt (MSSQLSERVER)
動;
1.
建立發布服務器 (1)連接進入 SQLSERVER在根節點下打開復制,右擊本
地發布,選擇新建發布。
2) 進入新建發布向導,選擇下一步;
3) 選擇需進行數據同步的源數據庫,按下一步;
4) 選擇快照發布,按下一步;
5) 選擇需要同步的表和列,按下一步;
6) 不需要篩選表行,直接按下一步;
7) 按圖示選擇,然后點擊旁邊的更改;
8) 點擊更改后進入設置時間間隔頁面,按圖示我們設置 作業執行時間
間隔為 3 分鐘, 設置完畢后點擊確定, 然后 繼續下一步;
9) 在代理安全性下,選擇安全設置;
10) 如圖所示, 需要鍵入本機的 Windows 賬號登錄名密
碼以及SqlServer的用戶名和密碼,然后點擊確定,繼續
下一步;
( 11) 按照圖示勾選,生成腳本文件可選可不選,然后點 擊下一步;
( 12) 默認設置,繼續下一步;
( 13) 填寫發布名稱,然后點擊完成
( 14) 然后開始自動創建發布,成功后點擊關閉;
( 15) 然后再本地發布下出現了我們的發布
2.
新建訂閱服務器
(1) 打開復制,右擊本地訂閱,選擇新建訂閱。
(2) 點擊下一步,選擇發布服務器,點下一步
(3) 這里我們選擇推送訂閱,視具體情況而選擇,然后點 擊下一步
(4)選擇添加訂閱服務器,添加 SQL訂閱服務器
( 5) 然后會彈出連接到服務器界面,連接到你為其同步數 據的服務
器, 配置好點擊連接, 注意這里需要輸入機器名, 不能填寫 IP 地
址
( 6) 然后會出現如下界面,選擇需要向其同步數據的數據 庫,并按
下一步
7) 這里需要建立連接,點擊旁邊有省略號的按鈕
8) 會出現如下界面,按圖示進行選擇,下方輸入訂閱服 務器的數據庫名
和密碼,上方也可以選第一個選項,用 Windows 登錄名和密碼的方式連
接,但由于我示例連接 的是虛擬機, root 用戶的權限不夠, 在最后
配置完成之后 會有錯誤提示,其實用機器名 Windows 用戶名,下邊輸
入密碼的方式也是可以的, 我這里選的是第二個選項, 使 用SQLSERVE
代理的方式,然后點擊確定;
直接點擊下
9)
一步
.rh.
10)
11)
12)
13)
14)
點擊下一
步
點擊下一
步
點擊下一
步
點擊下一
步
點擊完成
出現如下界面,然后點擊關閉
.rk
.rk
.rk
.rk
15)
16) 然后會在你的發布下出現一個訂閱,同時在鏈接服
務器里出現一個鏈接
鏈接服務器:
同時在遠程服務器,也就是你的訂閱服務器里的本地訂閱里也會出現對服務器數據 的訂閱,然后服務
器數據庫更新,計劃會按時間間隔執行,執行時就會用數據快照 的方式同步訂閱服務器的數據了,如圖這是訂
閱服務器的本地訂閱: 需要注意的是,發布服務器的代理服務一定要開,如果訂閱服務器的本地訂閱里看 不
到訂閱的話多刷幾次就好了,數據庫的同步復制到此結束。
三、 異構數據庫的同步
異構數據庫同步用到的技術包括觸發器, 接服務器。實現
原理是需同步數據的雙方需要都開啟 服務,并進行配置,的配置稍后會講到,
MSDTC, RPC SQLSERVER!
135teInetMSDTCRPC,
端口,可以試 因為的通信依賴于所以有防火墻的話雙方都需要開啟
SQLSERVE135
啲配置管 試端口是不是通的,兩個數據庫服務器應該都支持遠程連接,在
MSDTCMSDTC
理器里可以進行配置, 然后建立鏈接服務器, 然后為服務器上需要同步的表分別建立觸發器, 在觸發器里進
行同步語句的編寫,這樣就實現了異構數據庫的數據實時同步。
SQL
1. MSDTC
的配置
(1) 雙方啟動MSDTC服務
MSDTC
服務提供分布式事務服務,如果要在數據庫中使用分布式事務,必須在參與的 雙方服務器啟動
MSDTCDistributed Transaction Coordinator
()服務。
操作步驟:
開始設置控制面板 管理工具 組件服務 打開組件服務節點
->->->->
右擊我的電腦屬性選擇選項卡
->->MSDTC
點擊安全配置
根據圖片所示將必要項打上勾點擊確定重啟服務即可
(2) 打開雙方 135 端口
MSDTCRPC( Remote Procedure Call (RPC)RPC135 RPC
服務依賴于 服務使用 端口,保證
,
服務啟動,如果服務器有防火墻,保證 端口不被防火墻擋住。
135
(tel net IP 135 Adva need
使用“ ”命令測試對方端口是否對外開放。 也可用端口掃描軟件(比如
Port Scanner
)掃描端口以判斷端口是否開放。
操作
:
步驟 向防火添加
1
點擊添加程序 點擊瀏覽
->
找到 文件夾下的 文件 點打開即可。
system32
,
步驟 添加 端口
2 135
點擊添加端口
填入 點確定即可。
135
步驟設置
3 SQL2005
)
打開 企業管理器
SQL2005
右擊根節點, 打開服務器屬性窗口將 “需要將分布式事務用于服務器到服務器” 的項勾上即 可
2.
創建鏈接服務器
(1) 打開本地數據庫 ,選擇根節點 => 服務器對象 => 鏈 接服務器,右
鍵單擊鏈接服務器,選擇新建鏈接服務器
(2) 常規配置,鏈接服務器名字可以隨便起,但是產品名
稱必須為大寫的 SQLSERVE
R
(3) 安全性配置,需要輸入遠程服務器的用戶名和密碼
(4)服務器選項,Rpc和Rpc Out設置為true,然后點擊 確定 OK
R
3.
創建觸發器
在創建觸發器之前,可以先試試鏈接服務器是否成功建
立,用 語句搜 索嘗試一下,如:
Select
lect * from
注意格式: 鏈接服務器別
名 數據庫 表名 如果成功的話繼續創建觸發器,不成功的話檢查原因
. .dbo. .
創建觸發器語法:
u expoxian
go
CREATE TRIGGER Tri_LatestSensorData
ON SY_LatestSensorData
FOR INSERT
AS
BEGIN
Inrt
into , f_uploadTime , f_code1 , f_code2 , f_code3 , f_code4 , f_code5 , f_code6 ) SELECT
f_gatewayId , f_uploadTime , f_code1 , f_code2 , f_code3 , f_code4 , f_code5 , f_ code6 from Inrted
END
刪除觸發器語法:
drop trigger Tri_LatestSensorData
針對表建立觸發器之后, 可以在服務器插入一條記錄試試, 看看遠程服務器能不能實時更新數據:
inrt
into
SY_LatestSensorData ( f_gatewayId , f_uploadTime , f_code1 , f_code2 , f_code3
f_code4 , f_code5 , f_code6 )
values ( 'S00007' , getdate (), 1, 1, 1, 1, 1, 1)
綜上所述,就是異構數據庫同步的方法,本文到此結束。

本文發布于:2023-05-24 05:09:46,感謝您對本站的認可!
本文鏈接:http://www.newhan.cn/zhishi/a/1684876187176690.html
版權聲明:本站內容均來自互聯網,僅供演示用,請勿用于商業和其他非法用途。如果侵犯了您的權益請與我們聯系,我們將在24小時內刪除。
本文word下載地址:同構或異構數據庫數據實時同步.doc
本文 PDF 下載地址:同構或異構數據庫數據實時同步.pdf
| 留言與評論(共有 0 條評論) |