sp_replmonitorhelppublication (Transact-SQL)
返回发布服务器上一个或多个发布的当前状态信息。在分发服务器的分发数据库上执行此存储过程,用于监视复制。
语法
sp_replmonitorhelppublication [ @publisher = ] 'publisher'
[ , [ @publisher_db = ] 'publisher_db'
[ , [ @publication = ] 'publication'
[ , [ @publication_type = ] publication_type ]
[ , [ @refreshpolicy = ] refreshpolicy ]
参数
- [ @publisher = ] 'publisher'
正监视其状态的发布服务器的名称。publisher 的数据类型为 sysname,默认值为 NULL。如果值为 null,则将返回使用此分发服务器的所有发布服务器的信息。
- [ @publisher_db= ] 'publisher_db'
已发布数据库的名称。publisher_db 的数据类型为 sysname,默认值为 NULL。如果为 NULL,则返回发布服务器上所有已发布数据库的信息。
- [ @publication = ] 'publication'
正受监视的发布的名称。publication 的数据类型为 sysname,默认值为 NULL。
[ @publication_type= ] publication_type
发布的类型。publication_type 的数据类型为 int,可以为下列值之一:值 说明 0
事务性发布。
1
快照发布。
2
合并发布。
NULL(默认值)
复制尝试确定发布类型。
- [ @refreshpolicy= ] refreshpolicy
仅限内部使用。
返回代码值
0(成功)或 1(失败)
结果集
列名 | 数据类型 | 说明 |
---|---|---|
publisher_db |
sysname |
发布服务器的名称。 |
publication |
sysname |
发布的名称。 |
publication_type |
int |
发布的类型,可以是以下值之一。 0 = 事务性发布 1 = 快照发布 2 = 合并发布 |
status |
int |
与发布关联的所有复制代理的最大值求值状态,可以是下列值之一。 1= 已开始 2 = 成功 3= 正在进行 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 的单位。 |
备注
sp_replmonitorhelppublication 用于所有类型的复制。
权限
只有分发数据库中 db_owner 或 replmonitor 固定数据库角色的成员可以执行 sp_replmonitorhelppublication。
请参阅
其他资源
How to: Programmatically Monitor Replication (Replication Transact-SQL Programming)