筆者最近碰到了需要搭建跨網(wǎng)段的SQL Server復制,實際的拓撲結構如下草圖所示:

發(fā)布端A服務器位于CDC機房中
訂閱端B服務器位于阿里云
因為SQL Server復制不支持通過ip連接分發(fā)服務器,為了解決跨網(wǎng)段、跨機房的問題,筆者采用了如下的解決方案:
1.設置端口映射:在防火墻中開放外網(wǎng)IP的1433端口對應位于CDC機房中的發(fā)布服務器A的1433端口。并且該1433端口僅對位于阿里云的服務器B開放。
2.打開位于阿里云的服務器B的1433端口,并設置僅限CDC機房服務器訪問。
3.基于安全考慮,采用備份文件初始化,這樣可以不必使用文件共享快照文件。
4.使用Host文件,將IP與服務器名對應。
5.由于僅僅是測試,為了簡化設置,發(fā)布服務器和分發(fā)服務器都在同一個服務器上。
----------------------------------------------------------------------------------------------------
以下是實際測試搭建SQL Server 跨網(wǎng)段(跨機房)通過備份文件初始化復制的過程截圖:
1,在訂閱服務器上設置HOST文件,將CDC機房的外網(wǎng)IP對應發(fā)布服務器A的服務器名:

2,同樣在發(fā)布服務器上設置HOST文件,將位于阿里云的訂閱服務器外網(wǎng)IP對應訂閱服務器的機器名:

3,在發(fā)布服務器和訂閱服務器上分別創(chuàng)建Replication用戶(這里僅提供了在訂閱服務器創(chuàng)建的截圖),分別用于日志讀取代理器連接發(fā)布服務器和推送復制連接到訂閱服務器。


4,在發(fā)布服務器上新建本地發(fā)布



此處快照文件夾可以隨便設置,因為后續(xù)不會使用到。














設置基本完成。
6,備份發(fā)布數(shù)據(jù)庫(需要保留一份在發(fā)布數(shù)據(jù)庫上,以備創(chuàng)建訂閱時使用):
USE [master]GOBACKUP DATABASE [mydb] TO DISK = N'E:/dbbackup/full/mydb 2015-02-26_2.BAK' WITH NOFORMAT, NOINIT, NAME = N'mydb-完整數(shù)據(jù)庫備份', SKIP, NOREWIND, NOUNLOAD,COMPRESSION, STATS = 10GO
7,拷貝一份備份文件到訂閱服務器8,在訂閱服務器還原數(shù)據(jù)庫:
RESTORE DATABASE [mydb] FROM DISK = N'D:/mydb 2015-02-26/mydb 2015-02-26.BAK' WITH FILE = 1, MOVE N'mydb' TO N'D:/MSSQL/Data/mydb/mydb.mdf', MOVE N'mydb_Data' TO N'D:/MSSQL/Data/mydb/mydb_Data.ndf', MOVE N'mydb_log' TO N'D:/MSSQL/Log/mydb/mydb_log.ldf', NOUNLOAD, REPLACE, STATS = 10GO
9,在發(fā)布服務器上創(chuàng)建訂閱:
USE [mydb]GOEXEC sp_addsubscription @publication = N'TranPub_mydb', @subscriber ='mySubscriptionNm', @destination_db = N'mydb', @subscription_type = N'Push', @sync_type = N'initialize with backup', @backupdevicetype='disk', @backupdevicename='E:/dbbackup/full/mydb 2015-02-26.BAK'
創(chuàng)建成功后會得到消息:
Job 'XXXX' started successfully.Warning: The distribution agent job has been implicitly created and will run under the SQL Server Agent Service Account.
10,最后還需要修改訂閱端的連接:


打完收工,文字不多,以圖片說話,如有不明白的地方請大家留言就是。
參考文獻:
https://technet.microsoft.com/zh-cn/library/ms147834(v=sql.105)
http://www.cnblogs.com/gaizai/archive/2013/09/18/3328511.html
http://www.cnblogs.com/gaizai/p/3309567.html
新聞熱點
疑難解答
圖片精選