July 18, 2006

Exchange Server Size Limits

Today at my work I ran into a puzzling problem. Our MS Exchange Server seemed to be running fine, but nobody could open Outlook. They were getting messages that the information store could not be contacted, and a connection with the server could not be established. But, with a quick look at the server, I could tell that the Exchange services were running like they normally should.

It took a dive into the event logs to find out what the problem was. What I found was that the Exchange database had reached 16GB. This is a hard-coded limit that’s been built into Exchange for years. When you get to 16GB, your server shuts down. This used to be really bad, because you couldn’t remount the information store to let you delete any messages, so you’d have to defrag or truncate it to get it below the limit. Then you could clean up the messages and get it back to the safety zone.

With Exchange 2003 you don’t have to do that. There is a registry option now that lets you temporarily add 1GB to the database size limit. This gives you the chance to remount the information store and delete a few messages. The fix, which can be found here, is as follows:

  1. Click Start, click Run, type regedit in the Open box, and then click OK.
  2. Locate and then click the following key in the registry: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSExchangeIS\<Exchange Server Name>\Private-<GUID>
  3. On the Edit menu, point to New, and then click DWORD Value.
  4. Type Temporary DB Size Limit Extension, and then press ENTER.
  5. Double-click Temporary DB Size Limit Extension.
  6. Type 1 in the Value data box, click Decimal in the Base box, and then click OK.
  7. Quit Registry Editor.

After this you can get in and start cleaning out mailboxes.

But that doesn’t answer the big question: Why does Exchange have such an inanely small limit on the size of the database? How can an enterprise-level piece of software expect you to fall under such tight restrictions? And the answer, for once, is good news. Ever since last year, the limit has been raised. All you have to do is upgrade to Exchange Service Pack 2, and suddenly you can bump up the limit to 75GB.

But it doesn’t go up to 75GB right out of the box. Oh, no. To get the full 75GB you have to dig into the registry again.

  1. Click Start, click Run, type regedit in the Open box, and then click OK.
  2. Locate and then click the following key in the registry: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSExchangeIS\<Exchange Server Name>\Private-<GUID>
  3. On the Edit menu, point to New, and then click DWORD Value.
  4. Type Database Size Limit in GB, and then press ENTER.
  5. Double-click Database Size Limit in GB.
  6. In the Value data box, type the new limit you want your database to have. It can be between 18 and 75.
  7. Click Decimal in the Base box, and then click OK.
  8. Quit Registry Editor.

Now, after all that is done you can restart your information store, and suddenly you have plenty of space to let your mailboxes grow. Keeping your users in check so you don’t get near the limit is another matter, though.

If you’re running Exchange Server, run out right now and check what your limits are, and what the size of your database is. You don’t want to find out you’ve hit the limit by getting a phone call, like I did!

Filed under The Computer Vet Weblog

Comments (0)

Comments RSS - Write Comment

No comments yet

Write Comment