MSSQL數據庫自動同步

MSSQL自動同步 by zengyu

這裏以117和75爲例說明:117發佈&分發服務器、75訂閱服務器

一、準備工作:
1、117&75上建立sqlagt用戶,隸屬於administrators組,用於啓動Sqlserveragent服務(開機自啓動),本地系統帳戶local,將不具備網絡功能,會產生錯誤

2、117/75上企業管理器中的SQL註冊必須爲本機名稱,不能爲local或ip

3、在117上建立75的SQL註冊

4、117/75上如果安裝了MSSQL後更改過機器名,需要修改MSSQL註冊主機名:
4.1 檢查有無sql註冊問題
use master
select srvid,srvname,datasource from sysservers
如果srvid字段=0,servname與datasource的值不一樣,則需要運行下步
4.2 修改註冊名稱
USE master
GO
DECLARE @serverproperty_servername  varchar(100),
 @servername    varchar(100)
SELECT @serverproperty_servername = CONVERT(varchar(100), SERVERPROPERTY('ServerName'))
SELECT @servername = CONVERT(varchar(100), @@SERVERNAME)
select @serverproperty_servername,@servername
EXEC sp_dropserver @server=@servername
EXEC sp_addserver @server=@serverproperty_servername, @local='local'
4.3 再次運行3.1,servname與datasource的值會相同

5、系統需要的擴展存儲過程是否存在(如果不存在,需要恢復):
sp_addextendedproc 'xp_regenumvalues',@dllname ='xpstar.dll'
go
sp_addextendedproc 'xp_regdeletevalue',@dllname ='xpstar.dll'
go
sp_addextendedproc 'xp_regdeletekey',@dllname ='xpstar.dll'
go             
sp_addextendedproc xp_cmdshell ,@dllname ='xplog70.dll'
go

6、同步是通過內網,內網不能關閉1433端口,不能關閉文件共享,不能刪除默認共享如D$ E$


二、同步配置
117角色:發佈、分發服務器  117主機名稱爲“117”
75角色:訂閱服務器 75服務器名稱“75”

1、企業管理器-->選中117節點
工具-->複製-->配置發佈、訂閱服務器和分發
下一步-->使"117"成爲它自己的分發服務器-->快照文件夾(//117/d$/mssql/ReplData)-->是-->否,使用下列默認設置-->完成
完成後會提示 成功的將"117"啓用爲"117"的分發服務器
完成後會在117建立distribution庫,會看到複製監視器項

2、工具-->複製-->創建和管理髮布 例如同步KBOX
選中要進行同步的數據庫-->點擊創建發佈-->下一步-->選中要同步的數據庫-->下一步-->事務發佈-->運行SQLServer2000的服務器-->
選擇要同步的表(該表的表結構中一定要有主鍵才能被選擇同步)-->下一步-->下一步-->發佈名稱(隨意)-->下一步-->完成

3、在75上建立一個同名的要同步的空數據庫KBOX

4、在創建和管理髮布界面中
展開已經創建了發佈的數據庫KBOX-->選擇該庫下的發佈-->再選擇強制新的訂閱-->選擇75-->訂閱數據庫名稱(默認)-->連續地 最短滯後時間-->
是,初始化架構和數據,勾選啓動快照代理立即開始初始化處理(如75上已經有了要同步的數據庫和表結構,選擇否)-->下一步-->完成
完成後會提示成功創建訂閱:75

5、點擊複製監視器,第一次會提示是否希望自動刷新複製監視器,選擇是,勾選不再提示

6、展開復制監視器,發佈服務器-->117-->KBOX:KBOX
點刷新按鈕可看到75:KBOX狀態爲正在運行
到75上的KBOX庫,可看到表結構、內容都已同步更新完成
測試在117KBOX庫任意表插入一條數據,在75上會看到同步過來的相同數據

注:KBOX庫新增表、表結構更改,需要手動刪除並重新強制訂閱

發佈了6 篇原創文章 · 獲贊 2 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章