use*_*027 2 replication sql-server-2012
这是我第一次将表添加到复制中。
我已经概述了将新表添加到现有复制的以下步骤。如果我错了,请纠正我。该表刚刚创建 - 没有数据。
exec sp_addarticle @publication = N'pub1', @article = N'tab1', @source_owner = N'dbo', @source_object = N'tab1'
EXEC sp_addsubscription
@publication = 'pub1',
@subscriber = 'sub1',
@destination_db = 'MLT-Rep'
GO
EXEC sp_addsubscription
@publication = 'pub1',
@subscriber = 'sub2',
@destination_db = 'MLT-Rep'
Run Code Online (Sandbox Code Playgroud)
在此之后,我应该运行 Snapshot 对吗?我该怎么做?只需导航到“本地发布”->“查看快照代理状态”-> 开始
以上步骤对吗?
添加新文章涉及将文章添加到发布、创建新快照以及同步订阅以应用新添加的文章的架构和数据。不需要重新初始化,但需要一个新的快照。
如果发布只有现有的推送订阅,则您的步骤是正确的。如果发布有现有的请求订阅,您还需要执行 sp_refreshsubscriptions。您是对的,要生成新快照,您可以使用“查看快照代理”对话框,或者您可以执行sp_startpublication_snapshot。
为避免在添加新文章时生成完整快照,发布属性@immediate_sync 和@allow_anonymous 必须设置为0。执行sp_addarticle,然后执行sp_addsubscription。如果发布有现有的请求订阅,您还必须调用 sp_refreshsubscriptions。然后生成快照,只会生成新添加文章的快照。请注意,此方法不是必需的,但通常在管理员希望在添加新文章时避免生成完整快照时使用。
有关详细信息,请参阅向现有出版物添加文章和从现有出版物中删除文章。
归档时间: |
|
查看次数: |
9916 次 |
最近记录: |