热门标签 | HotTags
当前位置:  开发笔记 > 数据库 > 正文

用Windows性能监视器监控SQLServer的常见指标

上边文章中提到Win的性能监视器是监控数据库性能必备的工具,接下来我就给大家介绍一些常见的监控指标,其实无非就是磁盘,cpu,

上边文章中提到Win的性能监视器是监控数据库性能必备的工具,接下来我就给大家介绍一些常见的监控指标,其实无非就是磁盘,cpu,

上边文章中提到Win的性能监视器是监控数据库性能必备的工具,接下来我就给大家介绍一些常见的监控指标,其实无非就是磁盘,cpu,内存等硬件的运行指标还有数据库自身的像锁啊、用户连接数啊、还有就是根据自身业务决定的需要注意的参数指标。

  1.SQL Server Buffer: Buffer Cache Hit Ratio

  这是一个很重要查看内存是否不足的参数。SQL Server Buffer中的计数器Buffer Cache Hit Ratio用来指出SQL Server从缓存中而不是磁盘中获得数据的频率。SQL Server会将某些查询过的数据缓存在内存中用于以后再次查询使用。当一个查询A进来了以后数据库会编译这个sql看看需要哪些数据,然后执行计划首先去内存中找看是否有这次查询所需要的数据,如果这个同样的sql刚才已经执行过了或者该表的数据已经缓存在内存中,但是却没有在内存中找到数据,那就有可能是因为内存不足引起内存挤压将缓存数据写回硬盘或者释放掉来提供数据库其他请求来使用。一般来说oltp的系统,这个值最起码也应该在90%以上,理想值是99%。如果这个值低于90%,那建议你应该添加内存了。

  2.Memory: Pages/sec

  这个也是监控内存是否不足的一个比较重要的参数。这个计数器记录的是每秒钟内存和磁盘之间交换的页面数。频繁的交换页面就会消耗更多的io,这会影响到服务器的性能。打个比方,超市有一个货架上边摆满了新进的各种商品a、b、c,当你去超市想买a的时候直接去货架就能拿到a,方便的很,当顾客进超市逛一圈以后跟你说我怎么没有发现旧商品d呢,我就想买这个d,然后工作人员就会去仓库把商品d拿出来摆放到货架上供下次顾客来买。但是货架摆满了怎么办呢,只能将时间长没有人问津的a下架放到仓库然后空出来地方摆放d,但是下次另一个顾客来了又有想要购买a的意向,工作人员就得再次把a拿出来替换掉货架上的d。其实内存就是这个货架,硬盘就是仓库。因为货架太小了,,导致只能频繁的更换货架上的商品来提供正常的运营,想减少反复来回搬运产生的io开销,只能换个更大的货架来满足需求。

  如果服务器上只跑的SQL Server,那这个指标的理想范围应该是0-20之间,偶尔超过20的话影响不大,如果这个值频繁的超过20,那说明你的这台服务器可能需要加内存了。

当然这个指标要配合着上一个指标Buffer Cache Hit Ratio来看,如果上一个指标缓冲命中一直在99%或者更高,而这个期间内你的页交换一直在20以上,那意味着不仅仅是内存不足,而且其他的程序占用了系统内存。

  3.Memory: Available Bytes

  另一个监控内存情况的计数器就是这个。这个值最少最少也得大于5M,因为SQL Server需要始终维持5-10m的自由内存用于分配,当这个值低于5m的时候,那SQL Server可能会因为缺少内存而产生性能瓶颈。

  4.Physical Disk: % Disk Time

  这个计数器记录的是磁盘的繁忙程度(是整个磁盘阵列或者物理磁盘的繁忙程度)。理论上这个值应该低于55%,如果持续的高于55%,那说明这台服务器上可能有io瓶颈。

如果只是偶尔的出现几次,那不必担心,但是可以对应的找到这个时间点,数据库正在干嘛执行了哪些语句,对应的优化一下。

  5.Physical Disk: Avg. Disk Queue Length

   这是一个比较重要的查看磁盘io情况的指标。理论上每个物理磁盘的值不应该超过2。当然这个值是需要计算的,比如用4块物理盘做了个raid10,此时在一个监控周期内磁盘队列的均值是10,那每块磁盘的队列值就是10/4=2.5,那么就可以说这个磁盘阵列存在i/o瓶颈了。这个跟之前的disktime指标一样,偶尔出现不必担心,如果长时间出现,那就得着手考虑解决磁盘的io性能问题了。

  6.Processor: % Processor Time

  这是监控cpu情况的一个指标(类似于disk time)。这个是观察cpu利用率的一个关键参数。如果Processor Time计数器的值持续超过80%,说明cpu存在瓶颈问题。如果只是偶尔出现,那说明可能是这个时间点有个特别消耗cpu的查询,可以在下一次这个时间点来临的时候尝试抓一下sql并且优化它。如果在某一个时间点以后cpu一直飙高,常见的情况就是:1.突然间的高并发2.索引重整3.突然一个经常使用的数据量特别大的索引失效了4.死锁5.其他好多好多。先找到问题所在,在处理掉它。

  7.System: Processor Queue Length

  这个指标类似于disk queue length,也是算单个cpu的。单个cpu不能超过2,比如你是2u的机器,那这个值不应该超过4,如果在一个监控周期内持续性的超过4,那就可能出现cpu瓶颈了。

  基本上常用的就是这么多,还有好多可以配合你检测SQL Server性能的计数器,有兴趣的可以自己百度下。 


推荐阅读
  • 自己用过的一些比较有用的css3新属性【HTML】
    web前端|html教程自己用过的一些比较用的css3新属性web前端-html教程css3刚推出不久,虽然大多数的css3属性在很多流行的浏览器中不支持,但我个人觉得还是要尽量开 ... [详细]
  • 通过Web界面管理Linux日志的解决方案
    本指南介绍了一种利用rsyslog、MariaDB和LogAnalyzer搭建集中式日志管理平台的方法,使用户可以通过Web界面查看和分析Linux系统的日志记录。此方案不仅适用于服务器环境,还提供了详细的步骤来确保系统的稳定性和安全性。 ... [详细]
  • 本文介绍了多个关于JavaScript的书籍资源、实用工具和编程实例,涵盖从入门到进阶的各个阶段,帮助读者全面提升JavaScript编程能力。 ... [详细]
  • 本文探讨了如何在日常工作中通过优化效率和深入研究核心技术,将技术和知识转化为实际收益。文章结合个人经验,分享了提高工作效率、掌握高价值技能以及选择合适工作环境的方法,帮助读者更好地实现技术变现。 ... [详细]
  • 本文详细介绍了在企业级项目中如何优化 Webpack 配置,特别是在 React 移动端项目中的最佳实践。涵盖资源压缩、代码分割、构建范围缩小、缓存机制以及性能优化等多个方面。 ... [详细]
  • 深入解析TCP/IP五层协议
    本文详细介绍了TCP/IP五层协议模型,包括物理层、数据链路层、网络层、传输层和应用层。每层的功能及其相互关系将被逐一解释,帮助读者理解互联网通信的原理。此外,还特别讨论了UDP和TCP协议的特点以及三次握手、四次挥手的过程。 ... [详细]
  • 云计算的优势与应用场景
    本文详细探讨了云计算为企业和个人带来的多种优势,包括成本节约、安全性提升、灵活性增强等。同时介绍了云计算的五大核心特点,并结合实际案例进行分析。 ... [详细]
  • 本文介绍了如何利用 Spring Boot 和 Groovy 构建一个灵活且可扩展的动态计算引擎,以满足钱包应用中类似余额宝功能的推广需求。我们将探讨不同的设计方案,并最终选择最适合的技术栈来实现这一目标。 ... [详细]
  • 本文介绍了数据库体系的基础知识,涵盖关系型数据库(如MySQL)和非关系型数据库(如MongoDB)的基本操作及高级功能。通过三个阶段的学习路径——基础、优化和部署,帮助读者全面掌握数据库的使用和管理。 ... [详细]
  • 福克斯新闻数据库配置失误导致1300万条敏感记录泄露
    由于数据库配置错误,福克斯新闻暴露了一个58GB的未受保护数据库,其中包含约1300万条网络内容管理记录。任何互联网用户都可以访问这些数据,引发了严重的安全风险。 ... [详细]
  • Hybrid 应用的后台接口与管理界面优化
    本文探讨了如何通过优化 Hybrid 应用的后台接口和管理界面,提升用户体验。特别是在首次加载 H5 页面时,为了减少用户等待时间和流量消耗,介绍了离线资源包的管理和分发机制。 ... [详细]
  • 本文详细介绍了在iPhone上设置和配置邮件账户的步骤,包括基础设置、服务器端口调整以及其他个性化选项,帮助用户顺利完成邮件账户的配置。 ... [详细]
  • MySQL 高性能实战教程
    本课程深入探讨 MySQL 的架构、性能调优、索引优化、查询优化及高可用性等关键领域。通过实际案例和详细讲解,帮助学员掌握提升 MySQL 数据库性能的方法与技巧。 ... [详细]
  • 探讨了如何解决Ajax请求响应时间过长的问题。本文分析了一个从服务器获取少量数据的Ajax请求,尽管服务器已经对JSON响应进行了缓存,但实际响应时间仍然不稳定。 ... [详细]
  • 本文介绍通过百度地图获取当前位置建筑物名称的具体步骤和方法,帮助用户更便捷地了解所在地点的信息。 ... [详细]
author-avatar
mobiledu2502924751
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有