3

I've had a clients exchange server get shut down abnormally which resulted in a corrupt database

I've tried running the ESEUTIL tool in repair mode - after 4 hours or so it says corruption if fixed but then trying to mount the store again still throws an error and running and integrity check against the database says its still corrupt

So I've backed up the files and remounted the stores letting exchange create new files - thinking I can connect outlook back up and it will sync its data back to exchange

Outlook connects to Exchange but when doing a send recive throws an error stating 'You don't have appropriate permission to perform this operation'

Something I did threw up an dialogue saying something about not the correct mailbox, not sure exactly as I can't get it to come up again now

Any ideas how I can recover from this? Bar backing up outlook to a psd, removing and readding the exchange account and then restoring the psd (did this once before, but with 10 machines this takes some time!)

Thanks

Dave

2 Answers2

2

Do you have any backups of the database/logs from before the crash?

What ESE/JET errors do you get when you try to mount the database? You'll see these in the application eventvwr. Specific JET errors will point to why the database is not mounting. Then do a search on the error to find out exactly what the error is talking about. Sometimes the errors given are esoteric and don't mean what you think they should.

So I've backed up the files and remounted the stores letting exchange create new files - thinking I can connect outlook back up and it will sync its data back to exchange

Couple things with that. By remounting the stores and letting Exchange create new files, do you mean that you created empty databases to bring the IS back online with no mail? If that's the case, I think you're very limited in your recovery options. You won't be able to just remount the old EDB and have everything work like it used to. You're best option at that point would be to set up an RSG and use ExMerge to pull the mail from the old EDB and pump it to the new one.

Secondly, Outlook is just a client that connects to the Exchange server and pulls the data from it. If you connect the client to Exchange, it will not upload its' copies of mail to the EDB.

Repair databases: blogs.technet.com/exchange/archive/2004/06/18/159413.aspx

ExMerge: msexchangeteam.com/archive/2004/07/01/171051.aspx

RSG (Recovery Storage Group): www.msexchange.org/tutorials/How-Recovery-Storage-Groups-Work.html

You can also use a third party tool to try to repair the DB and pull and restore email like this one: www.mailretriever.net/index.html. That's just the one that I'm familiar with, but there are other products on the market you can look at as well. I'm not an endorsement monkey.

Also, my rep is too low to post a lot of links in here, so copy and paste to your browser.

Holocryptic
  • 5,665
  • 2
  • 29
  • 37
  • Thanks for your detailed response... Time was against me so I gave up trying to repair and did the long winded restore...so I'm not sure of what the exact error messages were now. Basically if you back up the data in outlook to a PST file, then delete and readd the exchange mailbox, you can then import the PSD back into outlook and it pushes all the mails etc back to the exchange database... this is what I did, just it takes forever when you have 10 clients some with mailboxes several GB big. Have re-enabled the windows backup which was supposed to be backing up exchange previously! –  Feb 03 '10 at 11:32
1

How did you run ESEUTIL?

You should follow some steps in order to properly repair an Exchange database:

  • ESEUTIL /P
  • ESEUTIL /D
  • ISINTEG

More info here: http://technet.microsoft.com/en-us/library/aa996773(EXCHG.65).aspx.

Massimo
  • 70,200
  • 57
  • 200
  • 323
  • Hi, thanks for your comments... I tried a repair and defrag as per http://www.msexchange.org/tutorials/Exchange-ISINTEG-ESEUTIL.html I also tried isinteg but this won't even run, throws a jet error - fails to open the database –  Feb 01 '10 at 12:20
  • You need the database to be mounted in order to run ISINTEG on it. – Massimo Feb 01 '10 at 16:26
  • Problem is I can't mount the database because it throws an error about the database being corupt, hence why i'm trying to run eseutil and isinteg against it –  Feb 03 '10 at 11:24