我有 SQL Server 2008 R2 合并复制设置。
我有 2 个针对同一个数据库的出版物,有 20 多个订阅者。
我们应用程序的逻辑防止同时更改来自 2 个订阅者的相同数据。
最近我开始遇到一些特定表的冲突,几乎所有时间 2 个冲突行(发布行和订阅行)的内容都是相同的,完全没有区别!
我的问题是:解决冲突并追溯到导致冲突的点的标准步骤是什么?
我有 SQL Server 2008 R2 合并复制设置。
我有 2 个针对同一个数据库的出版物,有 20 多个订阅者。
我们应用程序的逻辑防止同时更改来自 2 个订阅者的相同数据。
最近我开始遇到一些特定表的冲突,几乎所有时间 2 个冲突行(发布行和订阅行)的内容都是相同的,完全没有区别!
我的问题是:解决冲突并追溯到导致冲突的点的标准步骤是什么?
您需要检查冲突查看器并观察冲突类型和冲突的行值。需要注意的是,冲突获胜者列将显示从基表中提取的获胜行值。如果您考虑一下,这些值是易变的并且可以更改,因此您在冲突获胜者列中看到的值可能不是发生冲突时的值,请记住这一点。Conflict Loser 列将显示从 MSmerge_conflict_publication_article 表中提取的丢失行值,这些值是静态的。
如果您无法根据冲突查看器确定冲突的根本原因,则可能需要实施审计方案。我在Auditing Changes in Merge Replication中提供了如何执行此操作的示例。
您遇到错误冲突的可能性很小,但审计应该揭示是否是这种情况。