添加额外订阅?

时间:2011-09-06 17:56:15

标签: sql-server replication transactional-replication

我已经有从A到B的推送事务复制(SQL 2008)。现在我需要添加一个额外的订阅C.我知道以下步骤应该有效,

Remove the publication from A. 
Backup the database
Copy the backup file to B and C
Create the publication on A
Run script on B and C to add the subscriptions 

但是,数据库非常庞大。是暂停复制并将数据库文件从B复制到C并在C上创建订阅然后恢复复制的方法吗?因为数据库很庞大。

1 个答案:

答案 0 :(得分:0)

是。我只是假设你从你从A中删除出版物的那一步开始。备份数据库。将数据库复制并恢复到B和C.现在您已准备好进行复制。

首先,当您在A上创建发布时,请确保将“如果名称正在使用”属性设置为“保持现有对象不变”。

Article Properties

Choices

设置发布后,您可以创建订阅。 这里重要的是向导的这一步:

Do NOT Initialize

您要确保未选中此框。正如您所看到的那样,它专门针对您的情况“它已经为订阅专门准备了”

如果您碰巧通过T-SQL执行此操作,则相关命令和参数为:

sp_addarticle @pre_creation_cmd ='none'

http://msdn.microsoft.com/en-us/library/aa239392(v=sql.80).aspx

sp_addsubscription @ sync_type ='仅限复制支持',@ status ='active'

http://technet.microsoft.com/en-us/library/ms181702.aspx