SQL Server 可更新订阅中有行筛选的同步复制移除项目而不重新初始化所有订阅!
来源:互联网 发布:java的流总结 编辑:程序博客网 时间:2024/05/29 18:15
在可更新订阅的同步复制中,有行筛选的项目表,移除的时候会提示重新初始化所有的快照并且应用此快照,这将导致所有的订阅数据库被重新初始化。
如下图,移除项目的时候提示:
此时如果取消则则取消操作
如果点击【标志为要重新初始化(M)】,勾选【立即生成新快照】,则立即生成新快照并初始化所有!——千万别操作!
如果点击【标志为要重新初始化(M)】,不勾选【立即生成新快照】,则下次启动快照时立即生成新快照并初始化所有!——千万别操作!
解决办法:
不要使用界面操作,用sql代码执行!
--如, 一个数据库有多个订阅exec sp_dropsubscription @publication=N'发布名次A', @article=N'表名', @subscriber=N'all'exec sp_droparticle @publication = N'发布名次A', @article = N'表名', @force_invalidate_snapshot = 0GOexec sp_dropsubscription @publication=N'发布名次B', @article=N'表名', @subscriber=N'all'exec sp_droparticle @publication = N'发布名次B', @article = N'表名', @force_invalidate_snapshot = 0GO@subscriber=N'all'--要删除其订阅的订阅服务器名。 subscriber 的数据类型为 sysname,无默认值。 --如果为 all,则删除所有订阅服务器的所有订阅。@force_invalidate_snapshot = 0--0 指定对项目所做的更改不会导致快照失效。--1 指定对项目所做的更改可能会导致快照失效
执行命令则完成!
其他同步正常!
注意:此时不要在订阅数据库中操作刚才除去发布的表,因为还有触发器,得禁用或删除,否则队列代理会出错使订阅不能同步回发布数据库。
(操作其他表不会使队列代理出错,同步正常。)
若操作除去发布的表使队列代理出错后,可把表添加回去发布,队列代理自动回归正常!
(但是队列中断时期在订阅数据库中操作的数据,因没有同步回发布数据库中,只能手工同步)
此时若继续添加该项目(表)并且有行筛选,正常用界面进行操作,不会有任何提示。
再启动生成快照,此时只对此单个表生成快照并初始化单个表!
如图:
参考:
sp_dropsubscription
sp_droparticle
记住:在操作的时候,建议测试多次!
0 0
- SQL Server 可更新订阅中有行筛选的同步复制移除项目而不重新初始化所有订阅!
- SQL Server 可更新订阅事务复制的trigger处理
- SQL Server 可更新订阅事务复制的identify列自动分配取值范围
- SQL Server 复制订阅
- SQL Server 可更新订阅的发布和订阅的数据库文件迁移
- SQLServer 复制中移除和添加发布而不初始化所有项目
- sql server的复制和订阅
- SQL Server事务复制通过备份文件进行订阅初始化
- SQL Server 2005-同步复制技术:发布、订阅
- SQL Server 事务复制分发到订阅同步慢
- Sql Server 具有可更新订阅的事务发布-业务升级
- SQLServer 可更新订阅的订阅库数据未同步到发布库查看
- SQL Server 复制(发布与订阅)
- SQL Server 复制 订阅与发布
- SQL SERVER 2008 复制(发布、订阅)注意事项
- 可更新订阅的事务复制错误:列名 'msrepl_tran_version' 无效
- 可更新订阅的事务复制错误:列名 'msrepl_tran_version' 无效
- SqlServer 使用脚本创建分发服务及事务复制的可更新订阅
- HDU1026:Ignatius and the Princess I(BFS+优先队列)
- Super Jumping! Jumping! Jumping!
- hdu 2007 平方和和立方和
- cocos2dx入门资料及学习资源
- C++ 重写重载重定义区别
- SQL Server 可更新订阅中有行筛选的同步复制移除项目而不重新初始化所有订阅!
- Swift编程语言学习12 ——实例方法(Instance Methods)和类型方法(Type Methods)
- 仇恨的力量
- 青岛热死了
- 【HDU 4812】D Tree【树的分治】
- 杭电4548 好长的筛选素数,打表,细节特别要注意l代表后面的大的那个数
- 三个方法让你成为更好的程序员
- hdu 2005第几天 函数 20140725.cpp
- hdu 2006 奇数乘积