PublisherMonitor.EnumSubscriptions 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
返回有关订阅的信息,这些订阅属于受监视发布服务器上的发布。
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 对象。
列 | 数据类型 | 说明 |
---|---|---|
status | Int32 | 与发布关联的所有复制代理的最大状态,可以是以下值之一: 1 = 已开始 2 = 成功 3 = 正在进行 4 = 空闲 5= 正在重试 6 = 失败 |
warning | Int32 | 属于发布的订阅生成的最大阈值警告,可以是以下一个或多个值的逻辑或结果。
1 = Expiration。 对事务发布的订阅已超出保持期允许的阈值(以保持期百分比的形式表示)。 2 = Latency。 将数据从事务发布服务器复制到订阅服务器所用的时间超过了阈值(以秒为单位)。 4 = Mergeexpiration。 对合并发布的订阅已超出保持期允许的阈值(以保持期百分比的形式表示)。 8 = Mergefastrunduration。 通过快速网络连接完成合并订阅同步所用的时间超出阈值(以秒为单位)。 16= Mergeslowrunduration。完成对合并订阅的同步所用的时间超过了慢速或拨号网络连接所要求的阈值(以秒为单位)。 32 = Mergefastrunspeed。 合并订阅的同步过程中的行传递速率未能维持快速网络连接上的阈值速率(以每秒传递的行数为单位)。 64 = Mergeslowrunspeed。 合并订阅的同步过程中的行传递速率未能维持慢速或拨号网络连接的阈值速率(以每秒传递的行数为单位)。 |
subscriber | String | 订阅服务器的名称。 |
subscriber_db | String | 用于订阅的数据库的名称。 |
publisher_db | String | 发布服务器的名称。 |
publication | String | 发布的名称。 |
publication_type | Int32 | 发布类型,可以是以下值之一: 0 = 事务发布 1 = 快照发布 2 = 合并发布 |
subtype | Int32 | 订阅类型,可以是下列值之一: 0 = 推送 1 = 请求 2 = 匿名 |
latency | Int32 | 在事务发布中,由日志读取器代理或分发代理传播的数据更改的最长滞后时间(以秒为单位)。 |
latencythreshold | Int32 | 事务发布的最长滞后时间,高于此时间即产生警告。 |
agentnotrunning | Int32 | 代理未运行的时间长度,以小时为单位。 |
agentnotrunningthreshold | Int32 | 产生警告前代理未运行的时间长度,以小时为单位。 |
timetoexpiration | Int32 | 订阅未同步时订阅过期前的时间长度,以小时为单位。 |
expirationthreshold | Int32 | 订阅过期导致警告产生前的时间,以小时为单位。 |
last_distsync | DateTime | 分发代理上次运行的日期/时间。 |
distribution_agentname | String | 事务发布订阅的分发代理作业的名称。 |
mergeagentname | String | 合并发布订阅的合并代理作业的名称。 |
mergesubscriptionfriendlyname | String | 合并发布订阅的合并代理作业的友好名称。 |
mergeagentlocation | String | 运行合并代理的服务器的名称。 |
mergeconnectiontype | Int32 | 将订阅同步到合并发布时使用的连接,可以是下列值之一: 1 = 局域网 (LAN) 2 = 拨号网络连接 |
mergePerformance | Int32 | 订阅的上次同步相对于其所有同步而言的性能,用上次同步的传递速率除以之前所有传递速率的平均值。 |
mergerunspeed | Single | 订阅的上次同步的传递速率。 |
mergerunduration | Int32 | 完成订阅的上次同步的时间长度。 |
monitorranking | Int32 | 用于对结果集中的订阅进行排序的排名值,可以是以下值之一: 对于事务发布: 60 = 错误 56 = 警告:“严重”状态下的性能 52 = 警告:即将过期或已过期 50 = 警告:订阅未初始化 40 = 正在重试失败的命令 30 = 未成功运行 () 20 = 正在运行(正在启动、正在运行或空闲) 对于合并发布: 60 = 错误 56 = 警告:“严重”状态下的性能 54 = 警告:长时间运行的合并 52 = 警告:即将过期或已过期 50 = 警告:订阅未初始化 40 = 正在重试失败的命令 30 = 正在运行(正在启动、正在运行或空闲) 20 = 未运行(成功) |
distributionagentjobid | Byte **[16]** | 事务发布订阅的分发代理作业的 ID。 |
mergeagentjobid | Byte **[16]** | 事务发布订阅的合并代理作业的 ID。 |
distributionagentid | Int32 | 订阅的分发代理作业的 ID。 |
distributionagentprofileid | Int32 | 分发代理使用的代理配置文件的 ID。 |
mergeagentid | Int32 | 订阅的合并代理作业的 ID。 |
mergeagentprofileid | Int32 | 合并代理使用的代理配置文件的 ID。 |
注解
方法EnumSubscriptions只能由分发数据库上的 或 replmonitor
固定数据库角色的成员db_owner
调用。
调用 EnumSubscriptions 等效于执行 sp_replmonitorhelpsubscription (Transact-SQL) 。