sp_dbmmonitorhelpalert (Transact-SQL)
适用范围:SQL Server
返回若干个关键数据库镜像监视器性能指标中的一个或所有指标的警告阈值信息。
语法
sp_dbmmonitorhelpalert
[ @database_name = ] N'database_name'
[ , [ @alert_id = ] alert_id ]
[ ; ]
参数
[ @database_name = ] N'database_name'
指定数据库。 @database_name为 sysname,无默认值。
[ @alert_id = ] alert_id
整数值,用于标识要返回的警告。 @alert_id为 int,默认值为 NULL
. 如果省略此参数,则将返回所有警告,但不包括保持期。
若要返回特定警告,请指定下列值之一:
值 | 性能指标 | 警告阈值 |
---|---|---|
1 |
最早的未发送事务 | 指定在主体服务器实例上生成警告之前,发送队列中可以累积的事务的分钟数。 此警告有助于衡量在时间方面数据丢失的可能性,并且它可能与高性能模式相关。 但是,当镜像因伙伴断开连接而暂停或挂起时,该警告也适用于高安全模式。 |
2 |
未发送日志 | 指定未发送日志达到多少 KB 后,在主体服务器实例上生成一个警告。 此警告有助于衡量在 KB 方面数据丢失的可能性,并且它可以与高性能模式相关。 但是,当镜像因伙伴断开连接而暂停或挂起时,该警告也适用于高安全模式。 |
3 |
未还原日志 | 指定未还原日志达到多少 KB 后,会在镜像服务器实例上生成一个警告。 此警告有助于测量 故障转移时间。 故障转移时间主要包括前镜像服务器需要在其重做队列中前滚剩余的任何日志的时间,以及短暂的额外时间。 |
4 |
镜像提交开销 | 指定在主体服务器上生成警告之前,每个事务可允许的平均延迟的毫秒数。 此延迟是主体服务器实例等待镜像服务器实例将事务日志记录写入重做队列时,所发生的开销量。 该值只适用于高安全模式。 |
5 |
保留期 | 用于控制数据库镜像状态表中的行保留多长时间的元数据。 |
有关与警告对应的事件 ID 的信息,请参阅对镜像性能指标使用警告阈值和警报(SQL Server)。
返回代码值
无。
结果集
对于每个返回的警报,都返回包含以下列的行:
列 | 数据类型 | 描述 |
---|---|---|
alert_id |
int | 下表列出了 alert_id 每个性能指标的值以及结果集中显示的 sp_dbmmonitorresults 指标的度量单位。 |
threshold |
int | 警告的阈值。 如果在更新镜像状态时返回大于此阈值的值,则会在 Windows 事件日志中输入项。 此值表示 KB、分钟或毫秒,具体取决于警告。 如果当前未设置阈值,则值为 NULL 。注意: 若要查看当前值,请运行 sp_dbmmonitorresults 存储过程。 |
enabled |
bit | 0 = 已禁用事件。1 = 已启用事件。注意: 始终启用保留期。 |
值 | 性能指标 | 单位 |
---|---|---|
1 |
最早的未发送事务 | 分钟数 |
2 |
未发送日志 | KB |
3 |
未还原日志 | KB |
4 |
镜像提交开销 | 毫秒 |
5 |
保留期 | 小时 |
权限
需要 sysadmin 固定服务器角色的成员身份,或直接在此存储过程上执行权限。
示例
以下示例将返回一行,该行指示是否为 AdventureWorks2022
数据库中最早的未发送事务的性能指标启用警告。
EXEC sp_dbmmonitorhelpalert AdventureWorks2022, 1;
以下示例为每个性能指标返回一行,指示是否在数据库上 AdventureWorks2022
启用该指标。
EXEC sp_dbmmonitorhelpalert AdventureWorks2022;