SQL server发布订阅事务复制新增表的解决方案(不重新初始化)

本文探讨了在SQL Server事务复制环境中,如何处理主库新增表的情况。介绍了两种策略:一是全表初始化(慎用),会导致所有表重新同步,可能造成长时间的数据空白;二是通过设置immediate_sync和allow_anonymous参数,实现新增表的快照启动,避免全库同步,推荐使用此方法。
摘要由CSDN通过智能技术生成

我们在完成发布订阅后的事务复制功能以后如果主库有新增表怎么办?当然官方早已想到这种情况,把新表发布之后启动代理会初始化快照,这样的方式有一个缺点:会把复制订阅链里的所有表都全重新初始化一次,初始化期间读库的表没有数据。持续时间也可能比较长,如果数据量巨大,可能会灾难性的初始化几个甚至十几个小时,而且无法挽回,因此在做该操作前,一定要更改并确认发布的配置是否会将整个快照初始化。

1.首先我们先来看一下第一所有表全部初始化(慎用):

具体的操作是 右键发布——属性——项目——将右侧的仅显示列表中已选中项目勾选去掉——勾选新表
在这里插入图片描述
在这里插入图片描述
上一步操作只是把这个表加入了发布的队列中,此时从库中不会出现新表,我们还要重新启动一下复制监视器中的代理。
操作如下:
右键发布启动复制监视器
在这里插入图片描述
经过上述操作后将重新进行整个库所有表的同步,由此我们得出结论此种方式不可取。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

香煎三文鱼

你的鼓励将是我创作的最大动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值