We help IT Professionals succeed at work.

Exchange 2007 DB restore

dunersbsquad asked
I'm having issues restoring an Exchange 2007 DB to the Recovery Group.  I can create the Recovery Group without issues and run the restore of the EDB/Logs and it places them into the RS##### directory.

But everytime I go to mount the DB it fails and when I run the DB analysis it comes back and says the database is in 'Dirty Shutdown' state and Missing current transaction log file.  I've tried 3 different backups and everyone gives me the same error.

What am I missing??
Watch Question

Are you doing the backup using ntbackup? Are you using the Exchange system backup feature?
you don't need the logs restored, you just need the edb then try mounting the store in RSG


I'm using NTBackup.

I've actually already used both of these examples prior to posting here.http://www.petri.co.il/using_rsg_in_exchange_2007.htm and

One thing I've noticed is that when I do the restore it only retores the EDB file.  And some of the examples show it should restore (E00.chk, E00.log, R00.chk, etc.).

I've also tried restoring without logs, deleting logs, moving logs to different locations.  Same result.
it sounds like you will have to repair the DB.  Make sure you have a backup of the db and logs before performing any eseutil commands, just in case.
Run the eseutil /p frorm the BIN folder and repair the priv1.edb.
Deleted the log and chk files.
Run a defrag on the store . eseutil /d
Run isinteg (isinteg -s servername -fix -test alltests) frorm the bin folder.
Mounted the store

you'll need at least double the space of your DB when running the defrag.


I ran the repair from the Exchange system console.  Is that not the same?  I'm familiar with exeutil from earlier versions, but thought they just added a GUI to 2007.
C:\Program Files\Microsoft\Exchange Server\Bin> eseutil /p <path of priv1.edb>  will bring your DB's to a Clean shutdown state

Delete all .log files in the Mdbdata folder, delete the .chk file, and then delete the Temp.edb file (if it exists).

C:\Program Files\Microsoft\Exchange Server\Bin> eseutil /d <path of priv1.edb>

C:\Program Files\Microsoft\Exchange Server\Bin> isinteg -s <servername> -fix -test alltests

This is assuming your install used the default install path.
I'm not sure if the GUI repair is the same, I'll have to double check.
Make sure there is a backup of db and logs before performing these.
Here's a good article:

This is about half way down the page, regard using the repair DB wizard:
"The tool will now run Eseutil /P and then Eseutil /D, followed by Isinteg fix test alltests against the respective database, just like we did manually earlier in this section. After a while, depending on the size of the database, you will be taken to a Report Repair Results page where you can see if the actions completed without any issues, and if not, it will show an explanation why it didnt."

Did it give you any reasons or errors after running the repair through the GUI?


When it was complete it just stated it was complete.  No error...nothing.

I'm running the eseutil manually now.  I'll post my results when in completes..


Well the eseutil worked....apparently the repair within the console does work.  At least they kept the old tools available.

Thank you for your help.


But on the same note is there a better way to doing Exchange backups?  The NT backup does seem to be doing that good of a job if I have to do a repair everytime.
I don't think it was a problem with NT Backup, it might have been the original DB was corrupt in the first place.

You can always test later on, doing the recovery the same way to ensure your backups are good.  
thanks by the way

Explore More ContentExplore courses, solutions, and other research materials related to this topic.