最近在对一个项目数量较大的发布做快照初始化时,遇到一个问题,就是在对发布添加新项目后,创建快照做初始化时,时间非常长,到最后超时失败,观察快照文件夹后,发现每次创建快照时,该发布下的所有项目都被重新初始化,后来在创建发布时有两个关键参数:
@immediate_sync,@allow_anonymous
@allow_anonymous
@allow_anonymous
如果是以增量方式创建的发布,在用脚本向发布中添加项目时,该发布相关的订阅需重新创建,即再次执行sp_addsubscription过程,否则在做快照初始化时会提示“由于没有需要初始化的订阅,因此未生成快照”。如果是以图形界面来勾选项目的话,就没这个问题,可以直接创建快照,估计这个sp_addsubscription步骤是被自动执行。
发布创建后,可以通过 sp_changepublication来变更参数
sp_changepublication
GO
sp_changepublication
GO
最后,如果@allow_anonymous