补之前发过的。
如有错误的地方还请评论留下意见,感谢。
首先说需求:想把服务器1的数据库B中的mf_fx的表的数据同步到服务器2的数据库B中的mf_fx表中。
当然,用navicat的数据传输可以实现这个功能,或者用备份文件也可以实现这个功能。但是当传输的数据有条件时navicat就不怎么好使,备份文件又嫌麻烦。那么我们就可以用服务器1和2之间建立连接。直接insert into 服务器2的表select from 服务器1的表。
我的数据库版本是08 r2 sp3
可以先在sys.servers中查看服务器中的链接。
首先在服务器2中建立连接服务器1
EXEC sp_addlinkedserver @server='name',--被访问的服务器别名 @srvproduct='', @provider='SQLOLEDB', @datasrc='loca' --要访问的服务器的ip地址 EXEC sp_addlinkedsrvlogin 'name', --被访问的服务器别名 'false', NULL, 'user_name', 'user_prd' --密码
再查看sys.servers可以看到刚才添加的链接已经成功。
然后用查询语句尝试一下:
select * from [name].[dbname].dbo.tablename
能出现结果。
开始数据的同步:
insert into mf_fx select * from [name].[dbname].dbo.mf_fxb
同步过后,也就不需要这个链接了。
exec sp_dropserver 'name','droplogins'
也可以查看:链接地址