转自
http://www.360doc.com/content/08/0630/17/51673_1384252.shtml
http://emzwh.blog.163.com/blog/static/293030882010415111630505/
与sqlserver相关的性能计数器
Process:Working Set
Working Set 计数器表示的是一个进程所占用的内存数量。监控时可以选择需要的进程,如:sql server的进程Working Set(Process sqlservr)
SQL Server:Buffer Manager:Buffer Cache Hit Ratio
高速缓存命中率,比率最好为 90% 或更高。增加内存直到这一数值持续高于 90%,表示 90% 以上的数据请求可以从数据缓冲区中获得所需数据。如果这个值很低,持续低于80%,就需要增加更多的内存。
SQL Server:Buffer Manager: Total Pages
这个计数器是针对SQL Server的物理读写,不是整个系统的物理读写。物理读写比较耗时,所以上面的两个值不要太大。
SQL Server:Memory Manager:Total Server Memory (KB)
若 Total Server Memory (KB) 计数器值与计算机的物理内存大小相比一直很高,可能需要更多的内存。
Full Scans/sec(SQL Server:Access Methods)(全表扫描/秒) 每秒的完全扫描数。如果这个计数器显示的值比1或2高。 [全表扫描很对性能影响很大,一般都优化SQL查询语句,尽量避免全表扫描]
Page splits/sec(SQL Server:Access Methods)(页分割/秒)由于数据更新操作引起的每秒页分割的数量。[页拆分是说把已满的页上一半的数据移到两个新页上,以便在本页上腾出空间插入数据。页拆分会降低性能。]
Lazy Writes/sec(惰性写/秒)惰性写进程每秒写的缓冲区的数量。值最好为0。[惰性写进程所做的事简单的说就是:如果高速缓存空闲列表变得太小,惰性写将扫描整个高速缓存,收回没有使用的页,已保持高速缓存有空闲空间可用。如果该计数器的值很小,说明高速缓存的空闲空间是够用的]
Average Latch Wait Ti m e ( m s ) (平均闩等待时间(毫秒)) 一个SQL Server线程必须等待一个闩的平均时间,以毫秒为单位。如果这个值很高,你可能正经历严重的竞争问题。
Latch Waits/sec (闩等待/秒) 在闩上每秒的等待数量。如果这个值很高,表明你正经历对资源的大量竞争。
Number of Deadlocks/sec(SQL Server:Locks)(死锁的数量/秒) 导致死锁的锁请求的数量
Average Wait Time(SQL Server:Locks)(ms) (平均等待时间(毫秒)) 线程等待某种类型的锁的平均等待时间
Lock blocks(SQL Server:Memory Manager):服务器上锁定块的数量,锁是在页、行或者表这样的资源上。不希望看到一个增长的值。
Use Connections(SQL Server):当前用户连接数
序言