原文:SqlServer Bug:复制架构更改参数(replicate_ddl)无效

最近测试可更新订阅的架构更改问题,发现了一个 bug。

在复制中,当在发布数据库对发布数据库进行架构更改时,结构自动同步到订阅中(这就是
复制架构更改)。由于某些原因,对某个表增加字段时,不需要同步到订阅。在发布属性中,有一个选项可以控制不同步架构更改。如下图:

SqlServer Bug:复制架构更改参数(replicate_ddl)无效-LMLPHP

只有将 复制架构更改 的值改为 false ,更改结构则不同步,更改实时生效。

也可以脚本来更改该参数:

EXEC sp_changepublication
@publication = N'publication',
@property = N'replicate_ddl',
@value = 0
GO EXEC sp_changepublication
@publication = N'publication',
@property = N'replicate_ddl',
@value = 1
GO

但是在 Microsoft SQL Server 2008 R2 (RTM) 中,该参数更改有问题。当把参数改为
False 时,架构更改是不会同步了;但是再把参数改回
True
时,发现结构更改也还是不同步。怀疑是bug,没有找到相关文档说明这个问题,于是自己下载
Microsoft® SQL Server® 2008 R2 Service Pack 3 更新试试看。安装SP3 后,正常了!~也许这个功能用的比较少吧,没有找到该问题的问题和修复文档,既然 sp3 有修复,那说明官方已经确认修复了。

05-20 18:08