Limiting Exchange 2010 Database Cache

I recently installed a Small Business Server 2011 at a client with some kickass hardware.  Imagine our surprise when we tried to actually run anything on the server and it CRAWLED, I mean seriously slow. Even to the point of opening files via the shared folders from a workstation was slow. It was a bit disturbing to say the least. I found the problem to be that Exchange 2010 was using up all available memory, as in a 12Gb store.exe process. I did some googling and found that this behaviour is actually by design. Now that’s great if it’s a dedicated Exchange server. However, when Microsoft have specifically designed SBS to run everything on one box and will only allow you to run it on one box according to the license, it just doesn’t make sense! (Thankfully with the Premium Edition they do allow you a seperate free licence to run SQL on a seperate box). I came across a workaround to the problem on  Eightwone’s blog. Please go there for the full explanation.

Basically what I needed to do was:

1. Start ADSIEDIT.msc

2. Navigate to Configuration > Services > Microsoft Exchange > > Administrative Groups > > Servers > > InformationStore

3. Right-click InformationStore, and edit msExchESEParamCacheSizeMax. Set it it to the number of pages to maximize the Database Cache to. Note that Exchange 2007 works with 8 KB pages and Exchange 2010 with 32 KB pages!

4. In the same place, edit msExchESEparamCacheSizeMin value for Exchange 2010 SP1′s cache manager to honor the minimum and maximum limits for allocating database cache memory.

5. Restart the Microsoft Exchange Information Store service for the change to become effective.

So, for instance, if you want to limit the Database Cache to 4 GB of an Exchange 2010 server, set msExchESEparamCacheSizeMax to 131072 (4 GB = 4.194.304 KB / 32 KB). If you want to limit the Database Cache to 2 GB of an Exchange 2007 server, set msExchESEparamCacheSizeMax to 262144 (2 GB = 2.097.152 KB / 8 KB).

Once I got Exchange back under control, the server ran beautifully!


Member of The Internet Defense League