Manage Learn to apply best practices and optimize your operations.

Track Exchange 2007 mailbox server health using database counters

When dealing with Exchange 2007 mailbox servers, keep an eye on database counters. This tip from Microsoft Exchange Server expert Brien Posey will explain how to monitor these counters to prevent potential mailbox server health problems from affecting users.

Monitoring database counters can help administrators maintain Exchange 2007 mailbox server health. Microsoft Exchange Server expert Brien Posey explains some important database counters and threshold values and offers advice on spotting potential mailbox server problems.

MSExchange Database ==> Instances(*)*\Log Generation Checkpoint Depth counter -- There are a few counters you can use to spot database performance problems -- this is the most important one. If the current process fails, Exchange Server must either undo or redo the process to keep a partial transaction from remaining in the database. This counter indicates the amount of work involved in fixing the database if needed.

According to Microsoft, this counter will usually display a value between 20 and 30 for a healthy Exchange 2007 mailbox server (per-storage group). Higher values may indicate that there is either a long running transaction (perhaps a message with a very large attachment), or a disk bottleneck. A higher value isn't considered problematic unless it exceeds 500.

MSExchange Database (Information Store) \ Database Page Fault Stalls/Sec counter -- This counter is incremented each time the database cache manager allocates a new page from the database cache. This counter should remain at zero. Higher values indicate that Exchange is not removing dirty pages from the database fast enough.

MSExchange Database (Information Store)\Log Record Stalls/sec counter -- This counter tells how many log records Exchange failed to write to log buffers each second because the buffers are full.

Ideally, this counter should remain at zero most of the time, with an average value of 10 or less. If you set an alert based on this counter, the threshold value should be set at 100. This is the highest spike that Microsoft considers acceptable for a healthy server. Higher spikes or averages greater than 10 may indicate high I/O write latencies.

More on monitoring Exchange Server performance:
Exchange Server capacity planning with Performance Monitor 

Why too much memory can hurt Exchange 2007 performance
Microsoft Exchange Server 2007 performance tutorial

MSExchange Database (Information Store)\Version Buckets Allocated counter -- This is a somewhat obscure yet vital counter to monitor. By default, Exchange 2007 has a maximum of 16,384 version buckets. If more than 70% of these buckets have been allocated, Exchange is at risk of depleting the version store. Because of this, the counter should remain at 12,000 or less.

MSExchange Database Instances(*)\I/O Database Reads Average Latency counter and the MSExchange Database Instances (*)\I/O Database Writes Average Latency counter -- The database read latency should register as 20 milliseconds or less on average, but spikes of up to 50 milliseconds are acceptable. Database writes take a bit longer, so they should be 50 milliseconds or less on average. These can spike up to 100 milliseconds, as long as database page fault stalls are not occurring.

MSExchange Database (Information Store)\Database Cache Hit% counter -- This counter shows you the percentage of database file page requests that the database cache fulfilled, instead of having Exchange perform a file operation.

If users are operating in Outlook cached mode, this number should remain above 99%. If the majority of your clients are operating Outlook online, or if they're accessing Exchange through OWA, this number should remain above 90%. Lower numbers indicate that the database cache size is too small. You can usually fix this problem by adding additional memory to the mailbox server.

About the author: Brien M. Posey, MCSE, is a five-time recipient of Microsoft's Most Valuable Professional (MVP) award for his work with Exchange Server, Windows Server, Internet Information Services (IIS), and File Systems and Storage. Brien has served as CIO for a nationwide chain of hospitals and was once responsible for the Department of Information Management at Fort Knox. As a freelance technical writer, Brien has written for Microsoft, TechTarget, CNET, ZDNet, MSD2D, Relevant Technologies and other technology companies. You can visit Brien's personal website at

Do you have comments on this tip?  Let us know.

Please let others know how useful this tip was via the rating scale below. Do you know a helpful Exchange Server, Microsoft Outlook or SharePoint tip, timesaver or workaround? Email the editors to talk about writing for

This was last published in July 2009

Dig Deeper on Legacy Exchange Server versions

Start the conversation

Send me notifications when other members comment.

Please create a username to comment.