SQL Server计数器

本文介绍如何使用性能监视器等工具监控SQL Server的性能,并详细解释了一些关键计数器的含义及阈值,如磁盘I/O、处理器负载、内存使用等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

SQL Server计数器——第一部分   Barrie Sosinsky

 

  接下来的那篇贴士SQL Server计数器,第二部分将会就使用计数器来监控SQL Server性能方面给出更多详细信息。

 

  性能监视器是你可以用来监控SQL Server性能的三个工具之一(其它两个分别是Profiler 和企业管理器)具有超过156个独立的计数器,并且还能创建你自己的计数器(正如SQL Server在线书籍上面描述的),这么一大串的工具要你来使用真是一件令人困惑的事情。Windows服务器操作系统提供了全部几百种可能的计数器来供你进行分析。我突然想起了“信息过载”这个词。然而,一些类型的计数器要比其它类型的更有价值,跟据你的安装和问题解决方法,可以直接根据需要挑选某些计数器。

 

  你可以从菜单命令或者从Profiler工具条的按钮上,直接调出系统监视器。在7.0版本中,默认安装了6个计数器进行监控:缓冲存储区命中率(Buffer Cache Hit Ratio),页面读取(Page Reads),页面写入(Page Writes)SQL编辑/(SQL Compilations/sec),服务器全部内存(Total Server Memory)(KB),以及用户连接。根据你使用的SQL Server版本的不同而有所区别,以为在6.5版本中,默认情况下是5:存储区命中率(Cache Hit Ratio)3I/O计数器(页面读取/秒,单页面写入/秒,以及事务/),还有用户连接。这些计数器测量的参数都类似,但是在含义上有很大的区别,因此也就具有不同的解释。

 

  一次测量一个计数器是个好主意。最重要的计数器包括:磁盘I/O,进城,内存,用户连接,以及网络,顺序如上。数据库(总体)性能有几个主要的瓶颈,同时这里也是你能够进行适当修正的地方。你会发现,性能监视器收集的数据比你需要的多一些,通常情况都是如此;或者你会发现你想要分析的性能特点已经从下一次数据扫描的图表中去掉了。通过选项/图标命令来调整更新频率,这样你就可以更好地察看结果中重要的方面了。

 

  你还会发现,当你解决或者诊断问题的时候,需要添加更多的计数器。通过使用编辑/添加到命令,或者用工具栏上的添加按钮,你就可以往性能监视器中添加计数器。在选择计数器的时候,你还需要注意你添加的某个计数器的不同的实例。例如,有些实例是针对数据库的,还有一些不是。例如,SQL Server 7.022个计数器,表示70个实例。

 

  注意,许多计数器都会拖系统性能的后腿,所以小心一点,不要在永久基础上安装一个会给数据库操作带来负面影响的计数器。你还会发现,一些计数器只有当性能监视器开始的时候才能运行,并且当你退出工具时候,它也随之结束。在下一篇文章中,我们将会进一步讨论重要的用于解决问题和优化的工具。

 

  SQL Server 计数器 ——第二部分

 

  在最后的一篇贴士中,我们来看看性能监视器,然后讨论一下它的默认情况下的行为。这里我们将更进一步地察看你需要注意的特定的计数器。

 

  有一些值得察看的明显的瓶颈。当你使用Physical Disk: % Disk TimePhysical Disk: Current Disk Queue Length(全部实例)来测量磁盘I/O,你会想要将磁盘时间计数器保持在2.0以下,还有超过3.0的当前磁盘队列长度(Current Disk Queue Length)就意味着你可能遇到了磁盘I/O瓶颈。同时测量两个计数器,看看它们之间是否有关联,也是个不错的主意;你可以点击检索,使它高亮,然后按下键盘上的Ctrl+H来使选中的检索高亮。第二个瓶颈就是处理器,你应该打开处理器的实例环境:系统中每个处理器的%处理器时间计数器。你可以看到两个值:处理器整体活动,以及处理器负载平衡得怎么样。任何一个负载总是超过80%的处理器都是超载了,需要进行升级了。

 

  4个内存计数器:SQL Server: 缓冲管理器Buffer Manager:缓冲区命中率( Cache Hit Ratio),惰性写入( Lazy Writes);内存: 页面错误/(Page Faults/sec) 分页文件(Paging File): % 使用率,这些都是值得监控的。任何低于80%的存储区命中率都表示,你需要添加更多的内存来存储缓冲数据了,太大的页面错误率或者分页文件使用率也都是同样的意思。惰性写入通常应该为0,正数表示页面已经写入磁盘。所有这些计数器都可以显示内存是否充足。

 

  还有,不要忘记察看用户连接的数量和你的网络性能。有用的连接计数器有:SQL Server: 一般统计数字(General Statistics):用户连接( User Connections) SQL Server:内存管理器( Memory Manager): 连接内存(Connection Memory) (KB)。这些计数器在分析CPU利用率的时候d都会用到,每秒登录数,还有核定的工作空间内存(Granted Workspace Memory),以上所有这些计数器都与建立和维护你的连接流量有关。

 

  如果你测量磁盘性能来收集一些统计数字,那么你就需要开启diskperf命令——它本身是关闭的,以保证性能不受到影响。在命令提示行下输入diskperf –y,就可以启动这个服务,还可以打开设备控制面板,然后在那里把它启动。你需要重新启动系统,以便让性能监视器接受这个新的设置。你将设置保存到PMC文件中,这个文件专门用于你的SQL Server环境实例。性能监视器也可以保存日志文件,在PerfMon的在线帮助中有详细描述。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值