Wednesday, November 19, 2008

Exchange, ESEUTIL and the Dirty Shutdown

It is pretty easy to tell when your Exchange server bit the dust. Nobody is getting emails and your ear is ringing from the everyone letting you know this. You get to the Mailbox Store and Public Folder Store and they are unmounted with a big red X covering them. You right click and mount the volume only to be denied.

This is when you have to check for a dirty shutdown and corrupt files in the Exchsrvr folder.

I am forewarning you though. This tip sometimes has the ability to make things worse due to file scrape and deletion. MS support will not like to hear you did this this trick that was created by them. So make sure you have TWO backup copies of the files we are going to work with. So if the first one dumps and you need MS support you can use the second copy and they will be none the wiser.

Here is what to do if you cannot mount your stores:

Find the location of all the important files:

C:\Program Files\Exchsrvr\MDBDATA

Stop all the MSExchange Services on the server then copy the folder MDBDATA to the desktop. Inside this folder is the store files.

From the same location as the MDBDATA folder copy the bin folder and paste it to the local C:\ this will make is much easier to run the eseutil tool from the command prompt.

Now start a command line session and get to the bin folder and use the eseutil tool:

C:\bin\eseutil /p "C:\Program Files\Exchsrvr\MDBDATA\priv1.edb"
C:\bin\eseutil /p "C:\Program Files\Exchsrvr\MDBDATA\pub1.edb"

This will check the database integrity and repair any problems it may find. If you want a real in depth definition of what is going on look on the Microsoft Web Site or google eseutil.

It will give you a running percentage of the check status on the command line screen. You may also get prompted as to whether or not you really want to do this. As long as you have a second copy of your MDBDATA file you will be OK.

Now that the scans are finished delete the .log and .chk files located in the C:\Program Files\Exchsrvr\MDBDATA one by one. Resist the temptation of selecting them all and deleting. You will run into a problem and won't be able to delete them. At least this is my experience.

Now run a defrag on the pub1.edb and priv1.edb files with the commands:

C:\bin\eseutil \d "C:\Program Files\Exchsrvr\MDBDATA\priv1.edb"
C:\bin\eseutil \d "C:\Program Files\Exchsrvr\MDBDATA\pub1.edb"

Once this is complete go back to your Exchange Services and restart them. Then go back to your Mailbox Store and Public Folder Store and remount them. Send out some test emails and pray for the best. If you get to the point where you will need to call MS support you can copy the files from the original MDBDATA folder from the desktop back into the one you were working on at anytime.

I hope this helped somebody out there. It took me about three days to figure this out, but once I knew it I never forgot it and I've used it more than once.

J

No comments: