You are on page 1of 3

SQL Server

Performance Monitoring

SQL Server is typically affected by the following bottlenecks:

1. CPU

2. Memory

3. File I/O

4. Locking, blocking and deadlocking

Monitoring server I/O subsystem :

PhysicalDisk Object: Avg. Disk Queue Length counter to determine the


average number of system requests waiting for disk access

PhysicalDisk Object: Avg. Disk Transfer/sec counter to determine the rate of


read and write operations on the disk.

SQL Server Memory Tuning

Memory: Pages/sec This counter indicates the rate at which pages are read from
or written to disk to resolve hard page faults

SQL Server: Buffer Manager: Buffer Cache Hit Ratio: counter indicates the
Percentage of pages that were found in the buffer pool without having to incur a
read from disk. Buffer Cache Hit Ratio should be consistently greater than 90.
This indicates that the data cache supplied 90 per cent of the requests for data. If
this value is consistently low, it is a very good indicator that more memory is
needed by SQL Server.

SQL Server: Memory Manager: Total Server Memory (KB) counter indicates
the total amount of dynamic memory the server is currently consuming If Total
Server Memory for SQL Server is consistently higher than the overall server
memory, it indicates that there is not enough RAM.
CPU Performance Monitoring

Processor: Percent Processor Time is the percentage of elapsed time that the
processor spends to execute a non-Idle thread

Processor: Percent User Time measures the amount of processor time consumed
by non-kernel level applications. SQL is such an application. If this is high and
you have multiple processes running on a server, you may want to delve further by
looking at specific process instances through the instances of the counter Process:
Percent User Time.

SQL Server: Access Methods - Page Splits/sec Number of page splits per second
that occur as a result of overflowing index pages.

Locking, blocking and deadlocking

SQL Server Locks Object: Number of Deadlocks/sec. This counter indicates


the number of lock requests that resulted in a deadlock. But unless this number is
relatively high, one cannot see much here because the measure is by second, and
it takes quite a few deadlocks to be noticeable.

SQL Server Locks Object: Average Wait Time (ms). This counter indicates the
average wait time of a variety of locks, including: database, extent, Key, Page,
RID, and table If users are complaining that they have to wait for their
transactions to complete, one can find out which object locking on the server is
contributing to this problem.

SQL Server General Statistics: User Connections. This counter indicates the
Number of users connected to the system.

2
3

You might also like