So, your Exchange 2003 server is running out of disk space, and you notice that no matter how many mailboxes you delete and purge, no matter if it’s backed up or not, no matter how short you set your deleted items retention period, you aren’t getting any disk space back… why?
To actually free up disk space, you will need to run an Exchange Database Utility called eseutil to defragment the Exchange datastore. It is located in the Exchange \bin folder, usually C:\Program Files\Exchsrvr\bin.
Also, look in your MDBDATA folder for your .edb and .stm files – you’re going to need their names. Most likely if you haven’t changed anything since installing Exchange, they are named priv1.edb and priv1.stm.
Now, before you go off to command line land, hang on a second – most likely if you’re doing this for the purpose of freeing up disk space, you don’t have enough disk space left to defragment the drive. You’ll need something, whether it’s another drive with available space or a USB stick.
Step 1: Stop the Exchange Information Store service.
Step 2: Run defragment command, and prepare to wait for a while. This is not something you do on the way out to lunch in the middle of a working day. For a 15GB database, this can take 1-2 hours.
Here’s the command:
eseutil /d “C:\Program Files\Exchsrvr\MDBDATA\priv1.edb” /f “E:\TempStreamFile.stm” /t “E:\TempDBFile.edb”
Replace the red path to priv1.edb with your actual path to your Exchange database.
The green .stm file is the temporary Exchange Streaming File to use during defragmentation, and the blue .edb file is the temporary database to use during defragmentation. Change the paths to point to your temporary disk with enough space to hold at least the size of your original EDB.