1. 所有被同步的数据表尽量要用主键,如果没有主键也没有关系,SqlServer会提示为表自动生成主键
2. 发布服务器、分发服务器和订阅服务器必须使用计算机名称来进行SQLSERVER服务器的注册。
3. SQLSERVER必需启动代理服务,且代理服务必须以本地计算机的帐号运行。 不得使用IP地址以及别名进行注册,比如LOCAL, “.”以及LOCALHOST等。
4.如果非同一网段或者远程服务器,或者只能用IP,不能用计算机名的,为对方注册服务器别名。将其对应关系加到本地系统网络配置文件中。文件的具体位置在C:\Windows\system32\drivers\etc\hosts,这里的配置和linux下类似:
192.168.0.1 server 192.168.0.2 client
6.发布服务器和订阅服务器都要设置MSDTC ,允许网络访问控制面板--->管理工具--->组件服务--->计算机--->我的电脑(Win7继续找 -->Distributed Transaction Coordinator--->本地DTC),右键属性,找到MSDTC选项卡,点击安全设置,按如下设置即可:
确定,重启MSDTC服务。
二:准备工作的详细操作步骤
1、启动SQL代理(SQLSERVERAGENT)服务。
2、开启SQL Server 2005的网络协议TCP/IP和管道命名协议并重启网络服务(在SQL Server Configuration Manager里头配置)。
3、设置SQL SERVER 身份验证为混合验证SQL Server和WINDOWS(发布、订阅服务器均设置)
4、发布服务器和订阅服务器互相注册
步骤如下:视图---单击已注册服务器---右击 数据库引擎---新建服务器注册----填写要注册的远程服务器名称----身份验证选“SQL Server验证“----用户名(sa) 密码,对于只能用IP,不能用计算机名的,为其注册服务器别名,见上。
准备工作完成,接下来我们进行发布和订阅的操作
三:发布和订阅
发布
(1)首先我们在发布服务器上(winserver2003)打开SqlServer2005 Management Studio (企业版)。在“对象资源管理器”中找到复制节点,右键--->新建发布(注:如果你的SqlServer是express版本的话,是没有发布这一功能的,只有订阅功能!)
(2)接下来选择要发布的数据库,下一步,选择“发布类型”,我这里选择“合并发布”,
我本人理解的几种发布类型:
(4)接下来设置作业计划,为了方便看到测试效果,我们设置“每隔一分钟”执行一次作业。
(5)设置快照代理安全性,连接到发布服务器时,使用sa
(6)为发布起个名字,完成发布
订阅
接下来,我们配置订阅服务器。订阅服务器是winxp系统,SqlServer版本为SqlServer 2005 Manager Studio Express ,只支持订阅。
(1)同发布,新建订阅
(2)选择发布服务器,找到我们刚刚新建的发布“Test3Copy” ,下一步
(3)选择运行代理的位置,根据需求选择是“推送”还是“请求
(4)接下来同发布类似,这里就不赘述了,订阅执行成功,在订阅数据库和发布数据库的表中都会多出一个字段来,SqlServer自动生成的标志订阅成功
原文地址:http://blog.csdn.net/wdkirchhoff/article/details/42341057