none
Replication 又见鬼了 RRS feed

  • 常规讨论

  • 因为要把所有的用户数据库还原,所以把所有库的同步拿掉了(没有直接禁用发布,失策),结果在还原数据库的时候,误把  distribution 也还原了

    这下复制就罢工了(还原后 sys.databases 里面 distribution 库的 is_distributibutor = 0)

    本来因为是所有的用户库都还原了,所以大不了禁用分发再重新配置,结果因为没有分发数据库(还原 distribution 导致其 is_distributor = 0),死活不给我禁用,直接再添加一个分发库也不行,死活还是要之前的那个库

    郁闷得很,最终还是手工删除搞定

    不知道有没有没有提供可以直接强制删除所有复制配置信息的

    DB级别的 sp_replicationdboption (当然,这个东东在升级的时候也不那么好使,在2005升级到 2008 的时候,replication 也弄出了很多问题,好多东东都要手工去找表进行调整,不然死活有一些同步信息在里面,导致重新配置同步的时候出现这样好样的问题)

    2012年5月19日 9:05

全部回复

  • Did cleanup with sps couple of times too, MS should make wizard more smart.

    2012年5月19日 23:19
  • 宁愿自己写脚本做同步方案,“怕” Replication

    Try SQL Server 2008 QQ:315054403 dgdba@hotmail.com

    2012年5月21日 9:29
  • 这个是有不少bug,不过还是很有用处的,自己同步很难达到这个效率。

    想不想时已是想,不如不想都不想。

    2012年5月21日 13:48
    版主
  • distribution 被还原成用户库后,只要再还原一次之前的master库,就可以再将其重置为分发库,这样,只需要重启初始化订阅,不需要再重建发布项了。
    2012年5月25日 4:49
  • distribution 被还原成用户库后,只要再还原一次之前的master库,就可以再将其重置为分发库,这样,只需要重启初始化订阅,不需要再重建发布项了。

    还原 master 可能带来的风险更高一些

    我宁愿重建,反正是按照固定模式写好脚本的,重建比重启初始化快得多

    2012年5月31日 8:12
  • 这个是有不少bug,不过还是很有用处的,自己同步很难达到这个效率。

    想不想时已是想,不如不想都不想。

    这个东西的BUG确实令人头痛,有时候的错误提示还是莫名其妙的

    所以很多时候希望有一个强力工具,可以把同步的东西全部清理掉,然后重做一次

    2012年5月31日 8:15
  • distribution 被还原成用户库后,只要再还原一次之前的master库,就可以再将其重置为分发库,这样,只需要重启初始化订阅,不需要再重建发布项了。

    还原 master 可能带来的风险更高一些

    我宁愿重建,反正是按照固定模式写好脚本的,重建比重启初始化快得多

    重建不需要重新初化快照吗?还是你的订阅都是不需要用快照来初始化的?
    2012年6月1日 1:30
  • 重建是需要重新初始化,但重启也是同样做初始化不是么?

    所以重建和重启的差异并不是非常大,相对于 rebuild master 来说,我更宁愿做重建,至少风险更小一些,从影响上来说,重建master也意味着用户访问受影响

    所以,有影响和风险更小,并且资源开销也差不多的重建,我为什么还要选择重启呢

    2012年6月1日 6:36
  • 重建是需要重新初始化,但重启也是同样做初始化不是么?

    所以重建和重启的差异并不是非常大,相对于 rebuild master 来说,我更宁愿做重建,至少风险更小一些,从影响上来说,重建master也意味着用户访问受影响

    所以,有影响和风险更小,并且资源开销也差不多的重建,我为什么还要选择重启呢

    你的意思我明白,其实我是看到开始说还原全部用户库,这样的话,我就没考虑用户访问的问题啦。
    2012年6月4日 1:20
  •  EXEC sp_MSforeachdb  @command1=' EXEC sp_removedbreplication ''?'''

     go
     EXEC sp_dropdistributiondb 'distribution';

    2012年6月12日 7:34