Tuesday, 21 April 2015

How to Recover Corrupt Information Store Database of Exchange 2010

Information Store is one of the most important modules of MS Exchange Server that is accountable to store database files of MS Exchange Server, known as EDB. There are cases when Information Store comes across adverse circumstances and gets corrupt, which consequences in loss of all the stored data in EDB files. Here is how you can recover from corruption in Exchange 2010 information store.

Steps are given below allow you to isolate information store and to recover private and public information store databases.

Step 1: Start information store, and if you face any error messages or other issues, note them.

Step 2: Execute a consistency check on information store databases. If database is consistent the, all the log files will be committed. You can run the following to check the consistency of public and private information store databases. Type the commands at the command prompt and press Enter at each line.

c:\exchsrvr\bin>eseutil /mh..\mdbdata\priv.edb
c:\exchsrvr\bin>eseutil /mh..\mdbdata\pub.edb

Note: In the above example, it is assumed that you run the commands from ExchSrvr\Bin folder and the .edb files are stored in ExchSrvr\Mdbdata folder.

Even if a single database is found to be in inconsistent state, you should perform a soft recovery to verify whether the copies of log files are placed in the Mdbdata folder or not. Note that log files are required to execute soft recovery. When you execute soft recovery, all uncommitted logs get committed to the information store database. To perform soft recovery, you can run the commands given below in the command prompt.

c:\exchsrvr\bin>eseutil /r /ispriv
c:\exchsrvr\bin>eseutil /r /ispub

It will let you recover the databases. For validation, repeat the steps and then run eseutil /mh. If the ‘State’ line is consistent for both the stores, shift to step 6.

Step 3: If one of the databases is inconsistent and even after running eseutil /r command, databases don’t go into consistent state, then run Eseutil.exe to perform hard repair:

c:\exchsrvr\bin>eseutil /p /ispriv
c:\exchsrvr\bin>eseutil /p /ispub

Step 4: Delete the .log and .chk files in the ExchSrvr\Mdbdata folder. Also, delete Temp.edb file from ExchSrvr\Mdbdata folder, if it exists.

Step 5: Start MS Exchange Information Store Service and confirm if the databases are working. If you discover that the store starts positively, then stop the service. If the service does not start, verify whether the database is consistent.

Step 6: Defragment the repaired database as follows:

c:\exchsrvr\bin>eseutil /d /ispriv
c:\exchsrvr\bin>eseutil /d /ispub

Make sure that you have hard disk space equal to 110% of the total database size.

Step 7: To repair both the databases, run the isinteg command given below:

c:\exchsrvr\bin>isinteg -pri -fix -test alltests
c:\exchsrvr\bin>isinteg -pub -fix -test alltests

Step 8: Start the information store database. If it starts well, move to step 9, otherwise an error -1011 crops up. In this case, you need to run the following command to restore Priv.edb and Pub.edb to a state where the information store identifies them:

c:\exchsrvr\bin>isinteg -patch

Step 9:   Restart the Information Store.

Step 10: Run the Directory Service/Information Store (DS/IS) Consistency Adjuster.

But, if you are still not able to recover the databases, consider opting for a professional Exchange Server recovery utility like Stellar Phoenix Mailbox Exchange Recovery, which will efficiently recover inaccessible mailboxes.


Post a Comment