MS SQL Server性能分析:几个重要的分析点

当您怀疑计算机硬件是影响SQL Server运行性能的主要原因时,可以通过SQL Server Performance Monitor监视相应硬件的负载,以证实您的猜测并找出系统瓶颈。

下文将介绍一些常用的分析对象及其参数。

Memory: Page Faults / sec
如果该值偶尔走高,表明当时有线程竞争内存。如果持续很高,则内存可能是瓶颈。

Process: Working Set
SQL Server的该参数应该非常接近分配给SQL Server的内存值。在SQL Server设定中,如果将”set working set size”置为0, 则Windows NT会决定SQL Server的工作集的大小。如果将”set working set size”置为1,则强制工作集大小为SQLServer的分配内存大小。一般情况下,最好不要改变”set working set size”的缺省值。

Process:%Processor Time
如果该参数值持续超过95%,表明瓶颈是CPU。可以考虑增加一个处理器或换一个更快的处理器。

Processor:%Privileged Time
如果该参数值和”Physical Disk”参数值一直很高,表明I/O有问题。可考虑更换更快的硬盘系统。另外设置Tempdb in RAM,减低”max async IO”,”max lazy writer IO”等措施都会降低该值。

Processor:%User Time
表示耗费CPU的数据库操作,如排序,执行aggregate functions等。如果该值很高,可考虑增加索引,尽量使用简单的表联接,水平分割大表格等方法来降低该值。

Physical Disk:Avg.Disk Queue Length
该值应不超过磁盘数的1.5~2倍。要提高性能,可增加磁盘。
注意:一个Raid Disk实际有多个磁盘。

SQLServer:Cache Hit Ratio
该值越高越好。如果持续低于80%,应考虑增加内存。 注意该参数值是从SQL Server启动后,就一直累加记数,所以运行经过一段时间后,该值将不能反映系统当前值。

读到这里可能有读者会好奇,SQL Server Performance Monitor是什么,如何来打开,样子有是什么样子的?
其实SQL Server Performance Monitor说的就是中文版SQL Server中的性能监视器,这里介绍一种打开SQL Server Performance Monitor的方法,如下:
首先打开SQL 事件探测器,这个通过企业管理器打开或者从开始菜单打开都可以,然后从事件探测器的工具-性能监视器就可以打开SQL Server Performance Monitor了。如下图所示(碍于网易博客本身的原因,可能图片显示比较小,请读者见谅):

如果本文中提到的参数,在SQL Server Performance Monitor中没有显示,请不要着急,按快捷键Ctrl+I或者最上面一排的“+”号按钮,从弹出的窗口中添加更多的参数或删除我们认为无用的参数。如下图所示:

from http://wlb.wlb.blog.163.com/blog/static/46741320089157217409/

发表评论?

0 条评论。

发表评论