经过大量搜索,阅读一些文章并尝试了几个建议的解决方案后,我仍无法成功为SQL Server设置双向事务复制。
我创建了两个数据库 - test1 和 test2 。
这两个数据库中的每一个都有一个表名table1,其中包含两列 - ID
和MESSAGE
。
ID
是主键,int IDENTITY,非FOR REPLICATION。
对于 test1 ,IDENTITY定义为IDENTITY(1,2)。
对于 test2 ,IDENTITY定义为IDENTITY(2,2)。
基本上是奇偶规则,以便复制的数据不会发生冲突。
但问题是,当我在两个数据库上创建发布和订阅并执行作业时,作业失败并显示消息说它无法删除table1,因为它用于复制。
所以我猜, test2 正在接收 test1 的初始快照,并且它正在尝试删除table1。反之亦然。
那么,我将如何创建双向复制?