sp_replmonitorhelppublication (Transact-SQL)

适用于:SQL ServerAzure SQL 托管实例

返回发布服务器上一个或多个发布的当前状态信息。 在分发服务器的分发数据库上执行此存储过程,用于监视复制。

Transact-SQL 语法约定

语法

sp_replmonitorhelppublication
    [ [ @publisher = ] N'publisher' ]
    [ , [ @publisher_db = ] N'publisher_db' ]
    [ , [ @publication = ] N'publication' ]
    [ , [ @publication_type = ] publication_type ]
    [ , [ @refreshpolicy = ] refreshpolicy ]
[ ; ]

参数

[ @publisher = ] N'publisher'

正在监视其状态的发布服务器的名称。 @publisher为 sysname,默认值为 NULL. 如果 NULL为使用分发服务器的所有发布服务器返回信息。

[ @publisher_db = ] N'publisher_db'

已发布的数据库的名称。 @publisher_db为 sysname,默认值为 NULL. 如果 NULL,则为发布服务器上的所有已发布数据库返回信息。

[ @publication = ] N'publication'

要监视的发布的名称。 @publication为 sysname,默认值为 NULL.

[ @publication_type = ] publication_type

发布的类型。 @publication_typeint,可以是以下值之一。

说明
0 事务发布。
1 快照发布。
2 合并发布。
NULL(默认值) 复制尝试确定发布类型。

[ @refreshpolicy = ] refreshpolicy

标识为仅供参考。 不支持。 不保证以后的兼容性。

结果集

列名称 数据类型 描述
publisher_db sysname 发布服务器的名称。
publication sysname 发布的名称。
publication_type int 发布的类型,可以是这些值之一。

0 = 事务发布

1 = 快照发布

2 = 合并发布
status int 与发布关联的所有副本 (replica)代理的最大状态,可以是这些值之一。

1 = Started

2 = Succeeded

3 = 正在进行中

4 = 空闲

5 = 重试

6 = 失败
warning int 属于发布的订阅生成的最大阈值警告,可以是其中一个或多个值的逻辑或结果。

1 = 过期 - 事务发布的订阅未在保留期阈值内同步。

2= 延迟 - 将事务发布服务器中的数据副本 (replica)到订阅服务器所花费的时间超过阈值(以秒为单位)。

4 = mergeexpiration - 合并发布的订阅尚未在保留期阈值内同步。

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

16 = mergeslowrunduration - 完成合并订阅同步所花费的时间超过了通过慢速网络连接的阈值(以秒为单位)。

32 = mergefastrunspeed - 合并订阅同步期间行的传递率未能通过快速网络连接保持阈值速率(以每秒行为单位)。

64 = mergeslowrunspeed - 合并订阅同步期间行的传递速率未能通过缓慢的网络连接保持阈值速率(以每秒行为单位)。
worst_latency int 在事务发布中,由日志读取器代理或分发代理传播的数据更改的最长滞后时间(以秒为单位)。
best_latency int 在事务发布中,由日志读取器代理或分发代理传播的数据更改的最短滞后时间(以秒为单位)。
average_latency int 在事务发布中,由日志读取器代理或分发代理传播的数据更改的平均滞后时间(以秒为单位)。
last_distsync datetime 分发代理运行的最后一个日期时间。
retention int 发布的保留期。
latencythreshold int 为事务发布设置的延迟阈值。
expirationthreshold int 如果发布是合并发布,则为发布设置的过期阈值。
agentnotrunningthreshold int 为代理设置的时间最长的阈值,该阈值不运行。
subscriptioncount int 对发布的订阅数。
runningdistagentcount int 为发布运行的分发代理数
snapshot_agentname sysname 发布快照代理作业的名称。
logreader_agentname sysname 事务发布的日志读取器代理作业的名称。
qreader_agentname sysname 支持排队更新的事务发布的队列读取器代理作业的名称。
worst_runspeedPerf int 合并发布的最长同步时间。
best_runspeedPerf int 合并发布的最短同步时间。
average_runspeedPerf int 合并发布的平均同步时间。
retention_period_unit int 用于表示 保留期的单位。
publisher sysname 发布发布的 SQL Server 实例的名称。

返回代码值

0(成功)或 1(失败)。

注解

sp_replmonitorhelppublication用于所有类型的副本 (replica)。

权限

只有分发数据库上db_owner或 replmonitor 固定数据库角色的成员才能执行sp_replmonitorhelppublication