SQL Server数据库镜像关键性能计数器

本文涉及的产品
云数据库 RDS SQL Server,独享型 2核4GB
RDS SQL Server Serverless,2-4RCU 50GB 3个月
推荐场景:
日志服务 SLS,月写入数据量 50GB 1个月
简介:

SQL Server数据库镜像关键性能计数器



监视数据库镜像基本有以下5种方法:

1. 配置数据库镜像监视器、设置告警阈值。

2. 配置WMI EVENT ALERT,配置镜像状态修改后的动作或告警。

3. 使用系统监视器查看关键性能计数器。

4. 部署作业监控异常镜像状态,发送告警。

5. 使用sp_dbmmonitorresults获取镜像数据。

 

当然,使用扩展事件和SQL Server Profiler也能监控到数据库事件中的数据库镜像状态修改。这种工具主要用于跟踪,而非监控的常规手段。

 

这篇博文主要介绍如何使用系统监视器(以前叫做性能监视器)来监控数据库镜像性能。SQL Server:Database Mirroring对象包含数据库镜像的性能计数器。以下列表描述了一些关键计数器。

 

关键的主服务器计数器:

  • Log Bytes Send/sec:日志从主到镜像的传输速率

  • Log Send Queue KB:还没有发送到镜像的日志总数(单位:千字节)

  • Transaction Delay:花费在等待来自镜像提交应答的延迟(单位:毫秒)。该计数器用于确定在主服务器数据库镜像是否影响性能很有用。

  • Log Compress Bytes Sent/sec:上一秒发送的日志的压缩字节大小。为了计算日志压缩率,可以用Log Compressed Bytes Sent/sec除以Log Bytes Sent/sec得到。

  • Log Bytes Sent from Cache/sec:在上一秒钟内从镜像日志缓存中获得的发送日志字节数。此计数器只在主体服务器上使用。 在镜像服务器上此值始终是 0。

 

关键的镜像服务器计数器:

  • Redo Bytes/sec:日志在镜像数据库前滚的速率。

  • Redo Queue KB:还没有前滚到镜像数据库的总日志数量。(单位:千字节)为了评估镜像重做日志的时间,可以用Redo Queue KB除以Redo Bytes/sec。

  • Log Bytes Received/sec:从主接收的日志的速率。为了评估镜像赶上主的时间,可以用Log Send Queue KB除以Log Bytes Received/sec。

  • Log Compressed Bytes Received/sec:在上一秒接收的压缩日志的大小。

  • Log Bytes Redone from Cache/sec:在上一秒钟内从镜像日志缓存中获得的重做日志字节数。此计数器只在镜像服务器上使用。在主体服务器上此值始终是 0。

 

使用性能计数器可以监视数据库镜像性能。 例如,可以检查 Transaction Delay 计数器以确定数据库镜像是否影响主体服务器的性能,可以检查 Redo Queue 和 Log Send Queue 计数器以确定镜像数据库与主体数据库之间保持同步的情况。 还可以检查 Log Bytes Sent/sec 计数器以监视每秒发送的日志量。

 

完整性能计数器列表,请参考:

https://msdn.microsoft.com/zh-cn/library/ms189931.aspx











本文转自UltraSQL51CTO博客,原文链接:http://blog.51cto.com/ultrasql/1907134 ,如需转载请自行联系原作者


相关实践学习
SQL Server on Linux入门教程
SQL Server数据库一直只提供Windows下的版本。2016年微软宣布推出可运行在Linux系统下的SQL Server数据库,该版本目前还是早期预览版本。本课程主要介绍SQLServer On Linux的基本知识。 相关的阿里云产品:云数据库RDS SQL Server版 RDS SQL Server不仅拥有高可用架构和任意时间点的数据恢复功能,强力支撑各种企业应用,同时也包含了微软的License费用,减少额外支出。 了解产品详情: https://www.aliyun.com/product/rds/sqlserver
相关文章
|
7天前
|
缓存 监控 Java
优化Spring Boot应用的数据库访问性能
优化Spring Boot应用的数据库访问性能
|
8天前
|
存储 缓存 Oracle
Oracle数据库可扩展性和性能
【7月更文挑战第6天】
32 7
|
4天前
|
SQL 监控 安全
数据库安全:SQL注入防御实践
【7月更文挑战第11天】SQL注入攻击作为一种常见的网络攻击手段,对数据库的安全性和业务稳定构成了严重威胁。为了有效防御SQL注入攻击,开发者和数据库管理员应采取一系列实践措施,包括输入验证与过滤、使用参数化查询、限制数据库用户权限、使用Web应用程序防火墙、定期更新和打补丁、实施实时监控和审计以及使用HTTPS协议等。通过这些措施的实施,可以显著提升数据库的安全性,降低遭受SQL注入攻击的风险。同时,开发者和数据库管理员应持续关注新的安全威胁和防御技术,不断提升自身的安全防护能力。
|
5天前
|
SQL 存储 安全
数据库数据恢复—SQL Server数据库出现逻辑错误的数据恢复案例
SQL Server数据库数据恢复环境: 某品牌服务器存储中有两组raid5磁盘阵列。操作系统层面跑着SQL Server数据库,SQL Server数据库存放在D盘分区中。 SQL Server数据库故障: 存放SQL Server数据库的D盘分区容量不足,管理员在E盘中生成了一个.ndf的文件并且将数据库路径指向E盘继续使用。数据库继续运行一段时间后出现故障并报错,连接失效,SqlServer数据库无法附加查询。管理员多次尝试恢复数据库数据但是没有成功。
|
7天前
|
缓存 监控 Java
优化Spring Boot应用的数据库访问性能
优化Spring Boot应用的数据库访问性能
|
10天前
|
SQL 自然语言处理 网络协议
【Linux开发实战指南】基于TCP、进程数据结构与SQL数据库:构建在线云词典系统(含注册、登录、查询、历史记录管理功能及源码分享)
TCP(Transmission Control Protocol)连接是互联网上最常用的一种面向连接、可靠的、基于字节流的传输层通信协议。建立TCP连接需要经过著名的“三次握手”过程: 1. SYN(同步序列编号):客户端发送一个SYN包给服务器,并进入SYN_SEND状态,等待服务器确认。 2. SYN-ACK:服务器收到SYN包后,回应一个SYN-ACK(SYN+ACKnowledgment)包,告诉客户端其接收到了请求,并同意建立连接,此时服务器进入SYN_RECV状态。 3. ACK(确认字符):客户端收到服务器的SYN-ACK包后,发送一个ACK包给服务器,确认收到了服务器的确
|
10天前
|
SQL 存储 关系型数据库
关系型数据库SQL Server学习
【7月更文挑战第4天】
21 2
|
15天前
|
SQL 存储 Java
SQL数据库学习指南:从基础到高级
SQL数据库学习指南:从基础到高级
|
12天前
|
存储 数据处理 数据库
数据库索引策略如何影响数据更新操作的性能?
【7月更文挑战第3天】数据库索引策略如何影响数据更新操作的性能?
15 1
|
14天前
|
SQL 存储 Java
优化Java应用的数据库访问性能
优化Java应用的数据库访问性能