Still celebrating National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17


Dirty Shutdown on Exchange 2003

Posted on 2008-06-24
Medium Priority
Last Modified: 2008-12-08
I am suffering a dirty shutdown on exchange 2003.  After reading and re-reading all the KB's and tips and tricks and every other tidbit of information out there I am a little reluctant on jumping in head first so I wanted to get some advice.  Here is the cut from the trouble shooter that I ran.
You can use Eseutil.exe to manually recover a database. In-place manual recovery runs simultaneously for all databases in the storage group. To do an in-place recovery with Eseutil.exe:
1. Copy all existing transaction log files to a safe backup location. Manual recovery may alter the current transaction log in such a way that missing databases or previous backups cannot be restored. The backup copies of the log files may be required to fully recover backups or missing databases.
2. Open a Command Prompt window and change the default directory to the transaction log file directory (for example, CD /D C:\Logs).
3. Run this Eseutil.exe command from inside the transaction log folder:

  C:\Exchsrvr\bin\eseutil.exe /R E00 /I
Now the steps:
Step 1 I want to make sure I copied the transaction log files to a "safe place" so I copied the whole EXCHSVR folder.  Will that cover everything?
Step 2 Open a command prompt window and change the default directory to the transaction lof file directory.  Change what default directory?  From the command prompt?
Step 3 run the eseutil from inside the transaction folder?  How do I get it there when it is located in the .bin file?  
These directions are not very clear, can someone help please.
Question by:RICHRICH26
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 2

Accepted Solution

jryan1099 earned 2000 total points
ID: 21858528
i would just worry about the EDB files, run the ese util on them. If the service doesnt start, you know it still needs work. Perhaps run it a few times. You can also make a VM (VMWARE machine) and copy the databases there and try to restore. You would need to also install exchane on this VM or course. here is an outline on what to do....

1. Make sure the databases are dismounted in ESM.

2. Before running the Hard Repair, I would suggest you to make a copy of the priv1.edb , priv1.stm and pub1.edb , pub1.stm

  Now From a command prompt, run eseutil in the repair mode syntax should be:

              Eseutil /p "c:\program files\exchsrvr\mdbdata\priv1.edb"


            -Using ESEUTIL /p is a last resort utility that is only run when databases will not mount due to inconsistancy.

            -ESEUTIL /p deletes any data needed (corrupt data or incomplete transactions) to bring the database to a consistent state.

            -ESEUTIL /p runs at about 3-5 Gig of data per hour.

            -NOTE: Do not click in the command prompt screen, it causes the ESEUTIL process to PAUSE, if this occurs you can press the F5 key to resume.


 3. Once that completes, run the same command against the pub1.edb file.

4. Run an offline defrag of both databases. The syntax should be:

              Eseutil /d "c:\program files\exchsrvr\mdbdata\priv1.edb"


            -You must have at least 110% free space, relative to the database size to run ESEUTIL /D.
            -If you do not designate a temp location using the t command, it defaults to the directory EXCHSRVR/BIN
            -ESEUTIL /d runs at about 3 to 5 Gig per hour
            -After running /d you must remove any log files in the MDBDATA folder before mounting the database.

            How to Defragment with the Eseutil Utility (Eseutil.exe)

5. Once that completes, run the same command against the pub1.edb file.

6. Disable the SMTP service prior to mounting the databases to prevent new email from coming in to the databases.

    Mount the databases with the repaired/defraged database.

    Logon to make sure you can access one of the mailboxes, but will want to then immediately dismount both of the stores

7. You will then need to run an isinteg to fix any corruption at the store level.

    The syntax should be:

               Isinteg -s servername -fix -test alltests


            - ISINTEG Must be run after ESEUTIL /P or ESEUTIL /d to remove logical corruption caused by deletions

            - ISINTEG -FIX runs at about 2 to 10 minutes per Gig of data

            - Select the database to run the utility against. (The database must be dismounted)
            - ISINTEG will create a log file named ISINTEG.PRI in the MDBDATA folder (open with Notepad)
            - Note the number of FIXES we get after each run of ISINTEG -FIX. We will need to run this till we get 0 fixes.  
            - This may take 3 or more times.
            - Also note the number of errors we get after each run of ISINTEG -FIX
            - Once we get 0 FIXES note the number of errors.

            Description of the Isinteg Utility 

Additional Information:

How to recover from information store corruption

Author Comment

ID: 21858710
I guess my problem is not knowing the correct syntax.  Also I do not have a .stm file.  My files are located

c:\program files\exchsrvr.mdbdata\priv1.edb what would the syntax be?

Author Comment

ID: 21865472
Ok, here is what I have done so far.  I am getting the error now C1041724.  Last night very late I did the eseutil /p on pub1.edb and the eseutil /p on priv1.edb.  It said it was successful.  This morning I did the /d on both priv1 and pub1 and it said defrag was successful.  I tried to mount the store and it would not mount.  I keep getting the error C1041724.  I am not sure if I needed to do anything with the transaction logs that start with E00 (which I didnt do anything with them)

Expert Comment

ID: 21865828
Sir, you do not have enought space on your disk. That is the error.

Author Comment

ID: 21866178
Actually, It wasnt a space problem, I never deleted the logs (E00) once I did that the store mounted perfectly fine.

Featured Post

Does Powershell have you tied up in knots?

Managing Active Directory does not always have to be complicated.  If you are spending more time trying instead of doing, then it's time to look at something else. For nearly 20 years, AD admins around the world have used one tool for day-to-day AD management: Hyena. Discover why

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

In-place Upgrading Dirsync to Azure AD Connect
One-stop solution for Exchange Administrators to address all MS Exchange Server issues, which is known by the name of Stellar Exchange Toolkit.
To show how to create a transport rule in Exchange 2013. We show this process by using the Exchange Admin Center. Log into Exchange Admin Center.: First we need to log into the Exchange Admin Center. Navigate to the Mail Flow >> Rules tab.:  To cr…
This video shows how to quickly and easily add an email signature for all users on Exchange 2016. The resulting signature is applied on a server level by Exchange Online. The email signature template has been downloaded from: www.mail-signatures…

721 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question