查看和修改请求订阅属性

本主题介绍如何使用 SQL Server Management Studio、Transact-SQL 或复制管理对象(RMO)查看和修改 SQL Server 2014 中的请求订阅属性。

本主题内容

使用 SQL Server Management Studio

“订阅属性 - <发布服务器>: <PublicationDatabase> ”对话框中查看发布服务器或订阅服务器的请求订阅属性,该对话框可从 SQL Server Management Studio 获取。 订阅服务器中可以看到更多属性,并且可以在订阅服务器上修改属性。 还可以在“ 所有订阅 ”选项卡上的“发布服务器”中查看属性,该选项卡在复制监视器中可用。 有关启动复制监视器的信息,请参阅 “启动复制监视器”。

在 Management Studio 中查看发布服务器的请求订阅属性

  1. 在 Management Studio 中连接到发布服务器,然后展开服务器节点。

  2. 展开 “复制 ”文件夹,然后展开 “本地发布” 文件夹。

  3. 展开相应的发布,右键单击订阅,然后单击“ 属性”。

  4. 查看属性,然后单击“ 确定”。

在 Management Studio 中查看和修改订阅服务器中的请求订阅属性

  1. 在 SQL Server Management Studio 中连接到订阅者,然后展开服务器节点。

  2. 展开 “复制 ”文件夹,然后展开 “本地订阅 ”文件夹。

  3. 右键单击某个订阅,然后单击“ 属性”。

  4. 根据需要修改任何属性,然后单击“ 确定”。

在复制监视器中查看发布服务器的请求订阅属性

  1. 在复制监视器的左窗格中展开一个发布服务器组,展开该发布服务器,然后单击一个发布项。

  2. 单击“ 所有订阅 ”选项卡。

  3. 右键单击某个订阅,然后单击“ 属性”。

  4. 查看属性,然后单击“ 确定”。

使用 Transact-SQL

可以使用复制存储过程以编程方式修改拉取订阅及访问其属性。 使用的存储过程取决于订阅所属的发布类型。

查看针对快照或事务发布的拉取订阅的属性

  1. 在订阅服务器上,执行 sp_helppullsubscription。 指定 @publisher@publisher_db@publication。 这会返回有关订阅的信息,该信息存储在订阅者的系统表中。

  2. 在订阅服务器上,执行 sp_helpsubscription_properties。 为@publication_type指定@publisher@publisher_db@publication和以下值之一:

    • 0 - 订阅属于事务发布。

    • 1 - 订阅是快照发布的一部分。

  3. 在发布服务器上,执行 sp_helpsubscription。 指定 @publication@subscriber

  4. 在发布服务器上,执行 sp_helpsubscriberinfo,指定 @subscriber。 这会显示有关订阅者的信息。

更改拉取订阅的属性以用于快照或事务发布

  1. 在订阅服务器上,执行sp_change_subscription_properties,指定@publisher@publisher_db@publication,将@publication_type的值设为0(事务)或1(快照),指定要更改的订阅属性为@property,并将新值设为@value

  2. (可选)在订阅数据库的订阅服务器上,执行 sp_changesubscriptiondtsinfo。 指定 @jobid的分发代理作业的 ID,以及以下数据转换服务 (DTS) 包属性:

    • @dts_package_name

    • @dts_package_password

    • @dts_package_location

    这会更改订阅的 DTS 包属性。

    注释

    可以通过执行 sp_helpsubscription来获取作业 ID。

查看合并发布的拉取订阅属性

  1. 在订阅端,执行 sp_helpmergepullsubscription。 指定 @publisher@publisher_db@publication

  2. 在订阅端,执行 sp_helpsubscription_properties。 为@publication_type指定@publisher@publisher_db@publication和值 2。

  3. 在发布服务器上,执行 sp_helpmergesubscription 以显示订阅信息。 若要返回有关特定订阅的信息,必须指定@publication@subscriber@subscription_type拉取值。

  4. 在发布服务器上,执行 sp_helpsubscriberinfo,指定 @subscriber。 这会显示有关订阅者的信息。

将请求订阅的属性更改为合并发布

  1. 在订阅服务器上,执行 sp_changemergepullsubscription。 指定 @publication@publisher@publisher_db,将要更改的订阅属性指定为@property,并将新值指定为@value

使用复制管理对象 (RMO)

用于查看或修改提取订阅属性的 RMO 类取决于提取订阅所依赖的出版类型。

查看或修改对快照或事务发布的请求订阅的属性

  1. 使用 ServerConnection 类创建与订阅服务器的连接。

  2. 创建 TransPullSubscription 类的一个实例。

  3. 设置PublicationNameDatabaseNamePublisherNamePublicationDBName属性。

  4. ConnectionContext 属性设置步骤 1 中的连接。

  5. 调用 LoadProperties 方法获取该对象的属性。 如果此方法返回 false,则步骤 3 中的订阅属性定义不正确或服务器上不存在订阅。

  6. (可选)若要更改属性,请为可设置的属性之 TransPullSubscription 一设置一个新值,然后调用该方法 CommitPropertyChanges

  7. (可选)若要查看新设置,请调用 Refresh 该方法以重新加载项目的属性。

  8. 关闭所有连接。

查看或修改合并发布的拉取订阅的属性

  1. 使用 ServerConnection 类创建与订阅服务器的连接。

  2. 创建 MergePullSubscription 类的一个实例。

  3. 设置PublicationNameDatabaseNamePublisherNamePublicationDBName属性。

  4. ConnectionContext 属性设置步骤 1 中的连接。

  5. 调用 LoadProperties 方法获取该对象的属性。 如果此方法返回 false,则步骤 3 中的订阅属性定义不正确或服务器上不存在订阅。

  6. (可选)若要更改属性,请为可设置的属性之 MergePullSubscription 一设置一个新值,然后调用该方法 CommitPropertyChanges

  7. (可选)若要查看新设置,请调用 Refresh 该方法以重新加载项目的属性。

  8. 关闭所有连接。

另请参阅

使用复制监视器查看信息和执行任务
复制安全最佳做法
订阅刊物