我正在两台 SQL Server 2008 机器之间进行合并复制。但是,当我尝试对系统进行任何修改时,出现以下错误。
The Merge Agent failed because the schema of the article
at the Publisher does not match the schema of the article at the Subscriber.
This can occur when there are pending DDL changes waiting
to be applied at the Subscriber.
Restart the Merge Agent to apply the DDL changes and
synchronize the subscription.
(Source: MSSQL_REPL, Error number: MSSQL_REPL-2147199398)
过滤器
简单的答案是对所有复制过滤器使用 VIEWS。这样,您可以轻松修改过滤器,而无需删除并重新订阅所有订阅者。
DDL
如果您修改合并复制中使用的任何表,则必须允许 DDL 向下应用到订阅者。如果您担心某些表在不同的时间向下复制,可能是因为它们在不同的发布中,并且 FK 可能会在复制插入期间失败,那么只需编辑 FK 并添加“NOT FOR REPLICATION”。
如果我能给您留下任何印象,请使用视图作为过滤器。他们是救生员。我们的数据库有 100 多个订阅者,他们是自切片面包以来最好的东西。我们可以轻松地修改一个 VIEW,瞧,一切都完成了,完全没有痛苦。