码迷,mamicode.com
首页 > 其他好文 > 详细

Replication-Replication Distribution Subsystem: agent xxxxxx failed. Column names in each table must be unique

时间:2015-12-21 23:12:44      阅读:171      评论:0      收藏:0      [点我收藏+]

标签:

  最近遇到一个关于发布订阅(Replication)的奇葩问题,特此记录一下这个案例。我们一SQL SERVER数据库服务器出现大量告警。告警信息如下所示:

DESCRIPTION: Replication-Replication Distribution Subsystem: agent xxxxxx failed. Column names in each table must be unique. Column name ‘xxxxx‘ in table ‘dbo.xxxxxx‘ is specified more than once.

    经过一番详细检查、分析后才发现这个错误出现的前因后果。我们暂且用A表示TableName, C表示该表上的字段/列名。 该系统的供应商的维护人员由于需求变更,需要修改表A,增加字段C,但是这个表做了发布订阅,所以他首先在订阅服务器上执行了增加字段C的脚本,然后去发布服务器上执行增加字段C的脚本,结果就出现了这个错误。Replication要将A表的修改从发布服务器同步到订阅服务器,结果订阅服务器上A表已经有了字段C,所以出现这个错误。正常情况下应该在发布服务器增加字段C,Replication会自动同步到订阅服务器。

   刚开始这个错误让我一头雾水,不知道为什么报这样的错误。直到详细检查、推理验证才发现问题根源。可以说是对Replication的一知半解导致了这个错误,我想开发人员和DBA都应该引以为戒!

Replication-Replication Distribution Subsystem: agent xxxxxx failed. Column names in each table must be unique

标签:

原文地址:http://www.cnblogs.com/kerrycode/p/5064958.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!