您可以在SQL Server实例上查看哪些性能计数器来确定其性能以及所有运行状况?


10

我是埃因霍温丰提斯大学的一名学生,我目前正在进行一系列访谈,以帮助开发SQL Server工具,并且我希望获得该领域专家的反馈。

我的问题之一是:

您可以在SQL Server实例上查看哪些性能计数器以确定其性能和总体运行状况?

特别是当好转坏时,我对阈值感兴趣。

贾米尔·扬·埃因霍温荷兰

Answers:


15

这是我的SQL Server Perfmon教程:http : //www.brentozar.com/archive/2006/12/dba-101-using-perfmon-for-sql-performance-tuning/

有关更多计数器和阈值,这是我在Quest时做的一张海报:http ://www.quest.com/documents/landing.aspx? id=11635


这是从任务中获得的精彩PDF。绝对是门将。他们也应该为DMV做一个。
StanleyJohns,2011年

实际上,我们做到了!通常在用户组会议和会议上发布它们。
布伦特·奥扎尔

6

这是一个很大的话题,与谷歌搜索有关的材料很多。首先,这些是我首先要看的计数器:

处理器–处理器时间百分比

系统–处理器队列长度

您可能会从您要求的每个DBA中获得不同的CPU使用率目标值。SQL Server许可证价格昂贵,因此,一方面您想最大化CPU的利用率,另一方面又不想损害可用性。在工作负载众所周知的理想环境中,您可以将使用率目标定为70%,警告率为80-90%,警报为90%+。回到现实世界,工作量达到高峰和低谷,您可能更愿意将平均目标定为50-60%。

内存–可用兆字节

分页文件-使用百分比

如果使用专用的SQL Server,则取决于所安装的RAM,少于100-200mb的可用内存可能表示饥饿和操作系统分页的风险。通常,我们不想看到太多的页面文件活动,因此我将调查百分比使用率是否大于2%,并担心它是否达到5%

缓冲区管理器–缓冲区高速缓存命中率

缓冲区管理器–页面预期寿命

相对于服务器的既定基准,最好考虑这两个计数器。理想情况下,我们希望缓存命中率尽可能接近100%,并且PLE可以运行数千秒。当他们偏离历史平均水平时要注意。

SQL统计信息-批处理请求数/秒

SQL统计信息–编译/秒

SQL统计信息-重新编译/秒

每秒请求数是衡量服务器“繁忙”程度的一个很好的相对指标。高编译/重新编译值可能表明CPU周期浪费在查询编译上。

物理磁盘-平均 磁盘秒/读

物理磁盘-平均 磁盘秒/写

物理磁盘–磁盘读取/秒

物理磁盘–磁盘写入/秒

正确配置的IO系统的粗略指导原则是:日志驱动器<5ms(理想地为1ms),数据<20ms(理想地为<10ms)。应该考虑驱动器的已知限制来考虑每秒的读取/写入,即,如果您具有1000 IOPS的容量,那么当平均IOPS达到750时,我将评估升级选项。


在该级别上是否有某些东西可以监视死锁并等待?
bernd_k 2011年

“锁-死锁数/秒”表示死锁。对于等待,“等待统计”类别中有各种计数器。
Mark Storey-Smith
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.