當您懷疑計算機硬件是影響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啟
動后,就一直累加記數,所以運行經過一段時間后,該值將不能反映系統當前值。