SqlServer2017 异地同步数据 发布订阅 - 事务发布的方式

1.资源准备,两台异地机器:

机器 操作系统 SqlServer 版本 机器名称 IP
上海A区某机房的 机器 A  操作系统-Windows Server 2019 Datacenter10.0 SqlServer2017 WIN-A   162 开头的外网IP-A
上海B区某机房的 机器B 操作系统-Windows Server 2019 Datacenter10.0 SqlServer2017 WIN-B 180开头的外网IP-B



 

2.查询两台SqlServer 的 ServerName必须和 计算机的机器名 保持一致


 查询SqlServer的ServerName 语句如下:

SELECT @@SERVERNAME

3.在 Sql Server Configuration Manager 中设置别名(两台机器都要做相应的设置),示例如下:



4.开启相应的SqlServer服务(两台机器一样),如下图:



5.重启SqlServer 服务(两台设置完 3 步骤,确认好 4步骤 重启SqlServer服务)。


6.测试两台SqlServer服务器用机器名是否可以正常登录,理论上要可以,示例如下:



7.在 发布服务器WIN-A 上进行发布,在订阅服务器WIN-B 上进行订阅即可。
这个步骤,网上有非常多的示例,此处不赘述(推荐一篇https://my.oschina.net/u/4286300/blog/3680304
或者根据SqlServer的提示步骤按照自己的需求设置,一路下一步即可。


 

附录: 在此过程中遇到的问题记录:

Question 1 如下图: 


解决: 给图中提示的目录 给到相应的创建权限即可,如果不知道给那个用户,就添加everyone 用户。

Question 2 如下图:

解决:把表(OP_HOUSE_LCL_CONTAINER1) 删掉重新建,如果表删除不掉或者也无法查询,考虑重新建表。
这种我花了比较多的时间,没找到能直接解决上图错误的方法,再提供一张图如下供参考:





 

猜你喜欢

转载自blog.csdn.net/CsethCRM/article/details/114951090