SQL Server Replication(使用SQL 2008)有三种复制方式
1. 快照
2. 事务
3. 合并
我在本机上试验了快照复制,用Test数据库创建了Publication,然后在本机上创建Subscription数据库(姑且叫做TestSubscription),创建完Subscription后,立即就能够看到TestSubscription的数据表(从Test数据库复制过来的,这一步姑且称作同步),对TestSubscription执行UPDATE, INSERT, DELETE操作,结果发现Test数据库也跟着UPDATE, INSERT, DELETE,这个是正常的但是,当我在本机上创建了Publication后,在另外一台机器上去创建Subscription(在那台机器上订阅数据库姑且也称作TestSubscription)后,发现数据没有同步过来,这不是悲剧了吗?这个问题怎么解决?

解决方案 »

  1.   

    不同步的原因很多,请查看你的数据库同步情况主要是在subscription 看看你的任务同步的情况,正确的是任务不断的运行。到你的subscription服务器中的replication --- local subscriptions ---- 右键view synchronization status 如果失败请查看原因。 如果运行则说明成功了另外如果你同步成功但数据不同步的原因在于你设置的同步时间有问题,例如你设置的是定时同步那只有你到同步的时间两个数据库才能同步。
      

  2.   

    快照->推送订阅,数据库可以同步,毕竟是推送型的,订阅端的改变不会影响发布端。快照->请求订阅,数据库同步的时候(查看同步状态),一直卡在查看同步状态这个对话框,也没有报错,如果账户错误,会报错(之前有遇到过)。我的数据库很小,就一个表,40条记录。
      

  3.   

    哦对了有的时候published的发布文件夹权限和磁盘空间也要注意