MS-SQL Server 2005:复制后的非收敛数据

时间:2008-12-05 08:44:57

标签: sql-server replication

我们有一个合并复制拓扑,包括一个发布者,多个发布和多个订阅。它已经运行了至少8个月没有问题。

几天前,我被告知我的PO代码无条件“更改”,从标准的“ZWWTP / PO-0092”样式到新的“ZWWT”样式:PO代码中的字符5到8被改为另一个字符串是chr(0)& chr(1)& chr(0)&某些服务器上的chr(1)

我达到了这样的程度,即我的复制/抄袭进程中只有一个生成了这样的虚拟数据:发布者上的PO代码和此特定订阅者不再匹配最近更新或添加的记录。订阅方创建的PO代码在上传到发布者时将被更改(保持在干部上)。从发布者下载的PO将在订阅者处使用更改的PO代码进行传播。

然后我能够使用一些表比较实用程序+一些UPDATE语句来清理/调整两台服务器上的数据,但是每次在两台服务器之间运行复制时,现在会出现相同的差异:两者都是干净/相同的数据运行成功复制后,服务器将重新设置为非收敛状态:相同的记录,相同的值!

我认为我没有在网上留下太多关于数据融合和复制的可用资源。我没找到任何东西。我计划在3个小时内抛出/重建现有的发布/订阅,但我仍然在寻找一个合理的答案来解决我的问题,然后才变成精神分析问题:

是否有人知道发生了什么?

PS:顺便说一下,由于PO代码不用作自然键,因此此复制问题对数据库完整性没有影响。还有一个论点支持代理密钥,它总是起作用与大多数时间工作的自然键相反,但是this has been discussed somewhere else ......

编辑:嗯,我做到了,它没有工作!我抛出了订阅和发布,重新创建了发布,但我无法生成快照。服务器无法管理它所谓的“发布者的标识范围分配条目”,“无法在系统表MSmerge_identity_range中找到。

浏览后,我发现这个article说“你删除了在发布数据库中创建的第一个发布”时会出现这样的问题

多么有趣!这正是我刚刚做的!

幸运的是,这个问题应该通过SQLServer 2005累积包5解决,我仍然需要下载和安装。但现在的问题是:在CP5发布之前,SQLServer 2005用户是如何工作的?

EDIT2:累积包5不起作用,我仍然无法为我的新复制创建快照!

1 个答案:

答案 0 :(得分:1)

我认为你有正确的计划;)