SQL Web Replication,以编程方式创建新订阅

时间:2014-10-06 19:52:09

标签: sql-server-2012 replication database-replication

任何人都知道是否可以动态地以编程方式创建新的SQL WEB复制订阅?

我可以通过VPN以编程方式进行,使用标准数据库进行数据库同步,但在使用Web复制时似乎无法动态创建订阅。

1 个答案:

答案 0 :(得分:1)

我们可以创建订阅并将其配置为使用T-SQL以编程方式使用Web同步(和/或RMO,如果这是SQL Server 2012或更早版本)。

使用T-SQL:

  • 在发布商执行sp_addmergesubscription并指定 @publication @subscriber @subscriber_db 的值,以及 @subscription_type 的值 pull

  • 然后在订阅者处执行sp_addmergepullsubscription 指定 @publication @publisher 的值,以及 的 @publisher_db

  • 然后在订阅者处,如果这是标准版或更高版本, 执行sp_addmergepullsubscription_agent指定值 @publisher @publisher_db @publication @use_web_sync 1 >, @internet_url @internet_security_mode @internet_login @internet_password

如果订阅创建过程无权访问发布者和订阅者,则您需要创建匿名订阅。

使用T-SQL:

  • 在订阅服务器上执行sp_addmergepullsubscription和 为 @subscriber_type 和值指定匿名的值 @publication @publisher @publisher_db

  • 然后在订阅者处,如果这是标准版或更高版本, 执行sp_addmergepullsubscription_agent指定值 @publisher @publisher_db @publication @use_web_sync 1 >, @internet_url @internet_security_mode @internet_login @internet_password

How to: Configure a Subscription to Use Web Synchronization (Replication Transact-SQL Programming)

中介绍了这一点