【问题标题】:SQL Server Replication - Duplicate subscription agents?SQL Server 复制 - 重复的订阅代理?
【发布时间】:2013-02-19 13:19:39
【问题描述】:

我是 SQL Server 复制的新手,并将一些更改推送到现有的复制环境。它是 SQL Server 2005 SP3,带有事务复制。
我创建了一个新表,将列添加到现有表中,并添加了一些 SP。我在发布者数据库上完成了所有这些工作。 我创建了一个新快照并重新初始化了订阅。将新表和新列复制到新服务器上,数据同步成功,但只有1次。

紧接着,复制监视器报告错误。在 Distributor to Subscriber History 选项卡上,我收到“子查询返回超过 1 个值”的消息。尝试的命令是...

delete from MSsubscription_articlecolumns
    where artid=89 and
          agent_id = (
              select id from MSsubscription_agents
                  where update_mode > 0 and
                        UPPER(publisher) = UPPER('xxxx') and
                        publisher_db = N'xxxx' and
                        publication = N'xxxxx'
              ) end

为什么会有重复的订阅代理?我该如何解决?感谢大家的帮助。

【问题讨论】:

    标签: sql-server-2005 database-replication


    【解决方案1】:

    我能够通过手动编辑 MSsubscription_agents 表中的数据来解决该问题。有 2 条记录具有相同的发布者、数据库和发布名称。我没有删除其中一条记录,而是将旧记录上的 update_mode 更改为 0,从而将其从原始问题中的问题陈述中过滤掉。然后复制过程能够通过该语句并正确运行。谢谢。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-05-13
      • 1970-01-01
      • 2022-07-29
      • 1970-01-01
      • 1970-01-01
      • 2012-06-03
      • 2011-06-12
      相关资源
      最近更新 更多