【问题标题】:Replication SQL SERVER复制 SQL 服务器
【发布时间】:2010-06-21 12:33:04
【问题描述】:

在我的生产服务器中,我的复制工作正常,我确实有分布式数据库,它是 2 个订阅者 db。 我的数据是从生产环境复制的(工作正常),但同时 数据被复制到订阅服务器中的分布式数据库会引发错误

错误消息 =
复制-复制分发子系统:PRD01-XYZ-VREPL1\REPL01-25 失败。 违反 PRIMARY KEY 约束“PK_vendors”。 无法在对象“dbo.tabname”中插入重复键。

【问题讨论】:

  • Dhivagar : 你得到你想要的答案了吗?如果是这样,你能接受吗?如果没有,你能澄清一下你还在寻找什么吗?通常,您提供的信息越多,就越有可能有人可以帮助您。

标签: sql replication sql-server-2005-express database-replication distributed-transactions


【解决方案1】:

我有一段时间没有这样做了,但这是一个刺。

首先,我不介意看到不匹配的记录,所以我会尝试这样的事情:

--to be run on the publisher
select pub.*, sub.*
from 
    db_name1.dbo.tabname pub
    JOIN linked_server_to_subscriber.db_name1.dbo.tabname sub
        ON pub.pk = sub.pk
WHERE
    pub.some_field != sub.some_field

希望对于“some_field”,还有另一个唯一列,或者可能是 dt_entered,或者可能是 rowguid。 :)。

最后,如果你的情况的逻辑涉及到记录被插入订阅者表而不是通过复制,并且复制的类型不是合并,你很可能会继续遇到这样的问题。

祝你好运。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-10-15
    • 1970-01-01
    • 2016-08-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多