PublisherMonitor.EnumSubscriptions 方法

定义

返回有关订阅的信息,这些订阅属于受监视发布服务器上的发布。

public:
 System::Data::DataSet ^ EnumSubscriptions(Microsoft::SqlServer::Replication::PublicationType publicationType, Microsoft::SqlServer::Replication::SubscriptionResultOption resultOption);
public System.Data.DataSet EnumSubscriptions (Microsoft.SqlServer.Replication.PublicationType publicationType, Microsoft.SqlServer.Replication.SubscriptionResultOption resultOption);
member this.EnumSubscriptions : Microsoft.SqlServer.Replication.PublicationType * Microsoft.SqlServer.Replication.SubscriptionResultOption -> System.Data.DataSet
Public Function EnumSubscriptions (publicationType As PublicationType, resultOption As SubscriptionResultOption) As DataSet

参数

publicationType
PublicationType

一个 PublicationType 值,该值指定该订阅要订阅的发布的类型。

resultOption
SubscriptionResultOption

一个指定结果选项的 SubscriptionResultOption 值。

返回

一个包含以下列的 DataSet 对象。

数据类型 说明
statusInt32 与发布关联的所有复制代理的最大状态,可以是以下值之一:

1 = 已开始

2 = 成功

3 = 正在进行

4 = 空闲

5= 正在重试

6 = 失败

warningInt32 属于发布的订阅生成的最大阈值警告,可以是以下一个或多个值的逻辑或结果。

1 = Expiration。 对事务发布的订阅已超出保持期允许的阈值(以保持期百分比的形式表示)。

2 = Latency。 将数据从事务发布服务器复制到订阅服务器所用的时间超过了阈值(以秒为单位)。

4 = Mergeexpiration。 对合并发布的订阅已超出保持期允许的阈值(以保持期百分比的形式表示)。

8 = Mergefastrunduration。 通过快速网络连接完成合并订阅同步所用的时间超出阈值(以秒为单位)。

16= Mergeslowrunduration。完成对合并订阅的同步所用的时间超过了慢速或拨号网络连接所要求的阈值(以秒为单位)。

32 = Mergefastrunspeed。 合并订阅的同步过程中的行传递速率未能维持快速网络连接上的阈值速率(以每秒传递的行数为单位)。

64 = Mergeslowrunspeed。 合并订阅的同步过程中的行传递速率未能维持慢速或拨号网络连接的阈值速率(以每秒传递的行数为单位)。

subscriberString 订阅服务器的名称。
subscriber_dbString 用于订阅的数据库的名称。
publisher_dbString 发布服务器的名称。
publicationString 发布的名称。
publication_typeInt32 发布类型,可以是以下值之一:

0 = 事务发布

1 = 快照发布

2 = 合并发布

subtypeInt32 订阅类型,可以是下列值之一:

0 = 推送

1 = 请求

2 = 匿名

latencyInt32 在事务发布中,由日志读取器代理或分发代理传播的数据更改的最长滞后时间(以秒为单位)。
latencythresholdInt32 事务发布的最长滞后时间,高于此时间即产生警告。
agentnotrunningInt32 代理未运行的时间长度,以小时为单位。
agentnotrunningthresholdInt32 产生警告前代理未运行的时间长度,以小时为单位。
timetoexpirationInt32 订阅未同步时订阅过期前的时间长度,以小时为单位。
expirationthresholdInt32 订阅过期导致警告产生前的时间,以小时为单位。
last_distsyncDateTime 分发代理上次运行的日期/时间。
distribution_agentnameString 事务发布订阅的分发代理作业的名称。
mergeagentnameString 合并发布订阅的合并代理作业的名称。
mergesubscriptionfriendlynameString 合并发布订阅的合并代理作业的友好名称。
mergeagentlocationString 运行合并代理的服务器的名称。
mergeconnectiontypeInt32 将订阅同步到合并发布时使用的连接,可以是下列值之一:

1 = 局域网 (LAN)

2 = 拨号网络连接

mergePerformanceInt32 订阅的上次同步相对于其所有同步而言的性能,用上次同步的传递速率除以之前所有传递速率的平均值。
mergerunspeedSingle 订阅的上次同步的传递速率。
mergerundurationInt32 完成订阅的上次同步的时间长度。
monitorrankingInt32 用于对结果集中的订阅进行排序的排名值,可以是以下值之一:

对于事务发布:

60 = 错误

56 = 警告:“严重”状态下的性能

52 = 警告:即将过期或已过期

50 = 警告:订阅未初始化

40 = 正在重试失败的命令

30 = 未成功运行 ()

20 = 正在运行(正在启动、正在运行或空闲)

对于合并发布:

60 = 错误

56 = 警告:“严重”状态下的性能

54 = 警告:长时间运行的合并

52 = 警告:即将过期或已过期

50 = 警告:订阅未初始化 40 = 正在重试失败的命令

30 = 正在运行(正在启动、正在运行或空闲)

20 = 未运行(成功)

distributionagentjobidByte **[16]** 事务发布订阅的分发代理作业的 ID。
mergeagentjobidByte **[16]** 事务发布订阅的合并代理作业的 ID。
distributionagentidInt32 订阅的分发代理作业的 ID。
distributionagentprofileidInt32 分发代理使用的代理配置文件的 ID。
mergeagentidInt32 订阅的合并代理作业的 ID。
mergeagentprofileidInt32 合并代理使用的代理配置文件的 ID。

注解

方法EnumSubscriptions只能由分发数据库上的 或 replmonitor 固定数据库角色的成员db_owner调用。

调用 EnumSubscriptions 等效于执行 sp_replmonitorhelpsubscription (Transact-SQL)

适用于

另请参阅