我有两个数据库服务器:
1. DB1
2. DB2
两者都是SQL Server 2012
。DB1
- 是生产服务器。DB2
- 是仅用于报告的服务器。有一个事务复制,它在DB1
(发布者)和DB2
(订阅者和分发者)之间复制数据。
最近数据库的大小增加了,如果我需要添加或删除任何对象,制作快照、发送快照并将Distributor
所有更改应用到Subscriber
. 现在需要 3 个多小时,这对我来说是不合理的。
所以我想知道我是否可以配置多个发布 - 一个用于不经常更改的最大表,一个用于所有其他对象。
是否有意义?您如何看待此解决方案的任何缺点?也许您可以为这种情况提供任何其他解决方案?
谢谢你。
确保您的出版物的这两个设置都设置为 False,这是默认值。如果这些设置为 FALSE 并且您不重新初始化您的订阅快照应该只为新文章生成。
如果您要更改文章的任何部分,则必须重新初始化并重新创建完整快照。
我个人的偏好是将文章分组到多个出版物中。这样,即使您必须重新初始化订阅并生成新快照,您也可以同时运行多个作业。如果您想要共享或个人(每个出版物)分发代理,您将需要做出选择。