SQLServer2008r2 复制(发布-订阅)总结
首先需求:我需要把205SERVER的数据同步到三个数据库中,2个本地,1个是在局域网(其实是vpn)。
操作步骤:1首先,把发布、订阅服务器的sqlserver agent服务都打开。
2 创建一个发布服务,选择要复制的表,生成快照,启动。
3 建立本地订阅2个,这些都一切顺利。
4 在创建局域网订阅时,发现订阅失败,主要有几个地方出现问题。
a创建订阅的时候,服务要求用实例名,不能用ip,所以必须在系统目录system32/drivers/etc下把host文件添加一条域名指向记录:192.168.0.205 205SERVER
b订阅服务的属性里,创建的时候是默认目录,直接找不到文件。我这里是用局域网访问,所以设置备用文件夹,路径设备为发布服务器路径(在发布服务器里设置快照目录共享,默认”D:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\repldata“)为//205SERVER/repldata.
c确保订阅系统中访问 //205SERVER/repldata成功。
d本来觉得一下轻松搞定,但却发现不成功,错误类似
快照由于出现操作系统错误 5,进程无法读取文件:找到了,拒绝访问。
快照由于出现操作系统错误 3,系统找不到文件:没找到,路径配置错误。
来回配置总是这两个问题。
就纠结于此,然后跑到发布服务器去修改文件夹访问权限(everyone 完全控制权限,发现是无用功),又老去修改备用目录想获取访问权限,都没有试通。
最终还是找出原因,由于配置的订阅由sqlserver代理去实现复制订阅,所以sqlserver代理没权限访问(我的是内置用户local system),于是解决办法有了,打开订阅服务器的sqlserver服务管理工具,把sqlserver代理的登录改成我的管理员用户,重启之后,于是订阅成功,数据过来了。
感谢党,感谢人民,感谢ccav。。。。。。。
ps:按常理来说:发布订阅统一用ftp目录应该是可以的,我这边服务器上原本有个ftp公网开放,不想去用了,所以没去试,不然ftp应该挺好用的。
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。