同步了快一个月了,因为途中比较麻烦,第一次,遇到烦的地方就停下了,今天终于同步成功了,哈哈,下面我就来介绍一下我实现两台数据库同步的过程。
首先配置需要注意些东西:
1.打开sqlserver配置管理器,启动sqlserver代理,设置属性中,启动模式为自动启动(两台服务器都需要配置),具体如图:
2.在sqlserver中新建查询,输入sql语句 select @@SERVERNAME,查询到本服务器的别名,(因为一台电脑上的sqlserver连接其他电脑的sqlserver在数据库同步的连接时候会报错,已经试过错误了,所以这里提前说明),查询到本sqlserver的别名后,将本机外网ip和别名写入hosts文件中,(C:\Windows\System32\drivers\etc\hosts),两台服务器需要互相在其hosts文件中写入对方的ip和别名。
3.接下来就开始主要部分吧,建立一个数据库DB_test,在数据库中建立一个表tb1,写入几个字段,但是一定要加一个设为主键的字段
4.点击sqlserver左侧的复制 -> 本地发布,会提示你配置分发服务器,这里在D盘建一个名为ReplData的文件夹,将地址写成这个文件夹的地址即可。
5.本地发布流程:(发布服务器上进行)
点击复制中的本地发布,右键新建发布,选择你要发布的数据库,此时有4种发布类型可供选择,现在选择事务发布,选择你要同步的数据库的表,点击下一步,点击右侧添加,可以重写筛选的条件,点击下一步,选择立即创建快照并使用快照保持可用状态,以初始化订阅,点击下一步,右侧安全设置,输入相应信息,一直点下一步,直至发布成功。具体如图示:
6.本地订阅流程:(订阅服务器上进行)
输入别名,sa和密码连接发布数据库 这时便可以看到刚发布过的数据库的发布名称“test_8.15”
选择一个 订阅数据库与发布数据库同步
这时你就可以看到订阅服务器的 你选择的数据库中已经有你发布服务器的那个数据库和表及其表中数据了,到此,同步完成。
我认为需要注意的问题有:
本文中的两台机器必定是可以使用sqlserver客户端互联(在sqlserver studio中设置'允许远程链接',同时要设置相应的ip地址,以及在配置管理器中开启tcp/ip协议即可)。