sp_replmonitorhelppublication (Transact-SQL)
适用于: SQL Server Azure 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_type 为 int,可以是以下值之一。
值 | 说明 |
---|---|
0 |
事务发布。 |
1 |
快照发布。 |
2 |
合并发布。 |
NULL (默认值) |
复制尝试确定发布类型。 |
[ @refreshpolicy = ] refreshpolicy
标识为仅供参考。 不支持。 不保证以后的兼容性。
结果集
列名称 | 数据类型 | 描述 |
---|---|---|
publisher_db |
sysname | 发布服务器的名称。 |
publication |
sysname | 发布的名称。 |
publication_type |
int | 发布的类型,可以是这些值之一。0 = 事务发布1 = 快照发布2 = 合并发布 |
status |
int | 与发布关联的所有复制代理的最大状态,可以是这些值之一。1 = Started2 = Succeeded3 = 正在进行中4 = 空闲5 = 重试6 = 失败 |
warning |
int | 属于发布的订阅生成的最大阈值警告,可以是其中一个或多个值的逻辑或结果。1 = expiration - 事务发布的订阅未在保留期阈值内同步。2 = latency - 将数据从事务发布服务器复制到订阅服务器所花费的时间超过阈值(以秒为单位)。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 | 用于表达 retention 的单位。 |
publisher |
sysname | 发布发布的 SQL Server 实例的名称。 |
返回代码值
0
(成功)或 1
(失败)。
注解
sp_replmonitorhelppublication
用于所有类型的复制。
权限
只有分发数据库上db_owner或 replmonitor 固定数据库角色的成员才能执行sp_replmonitorhelppublication
。