[Last Call] Learn how to a build a cloud-first strategyRegister Now


MS Exchange 2007 database corrupt

Posted on 2012-08-16
Medium Priority
Last Modified: 2012-08-17
Hello All....

I have a single node, MS Exchange 2007 server that experienced a hard drive failure (RAID 5) last night.  In the process, Exchange failed.

I have replaced the failed drive twice today.  Each time, the array rebuilds, and exchange starts, but after about 45-60 minutes, the message store crashes:

Event ID: 481 - ESE - An attempt to read from the file <path>\mailbox Database.edb at <ofset information> failed after 0 seconds with system error 1: "Incorrect function".  The read operation will fail with error -1022.  If this error persists then the file may be damaged and may need to be restored from a previous backup.

I then get another event:

Event ID: 1159 - MSExchangeIS - Database error Disk IO error occurred in function JTAB_BASE::EcRetrieveColumnByPtagId wile accessing the database...

I am assuming the database is corrupt.  The failure occurred during last night's backup.  I would prefer to "repair" instead of going to an older backup.  

What is the best method to repair, and how long should it take.  The db size is about 100G.

Question by:tcampbell_nc
  • 2
LVL 52

Expert Comment

by:Manpreet SIngh Khatra
ID: 38302336
Agree with you :)

I would suggest to Restore from last night .... repair the current DB place in RSG and get the data for the day or preferably MERGE :)

Repair would run approx at 5-8GB per hour i would say .... but depends a lot on your server performance.

- Rancy
LVL 52

Accepted Solution

Manpreet SIngh Khatra earned 1000 total points
ID: 38302344
Method to repair would be ....

1. Make sure to create a copy of the Database before proceeding with the Repair.
2. eseutil /p "EDB file location"
3. eseutil /d "EDB file location"
4. ISINTEG command

Ideally "eseutil /p" would do for us as we just need to bring the DB in good state to mount and merge the data from RSG.

- Rancy
LVL 33

Assisted Solution

Exchange_Geek earned 1000 total points
ID: 38302833
Why make the users suffer cause the stores are going offline.
If you database is offline now, OR going offline - there are couple of quick points that you can work with.

1) Bring the database to clean shutdown state.
2) That is to dismount the stores gracefully.
3) Place the database in RSG and mount blank store.
4) Take backup of RSG Database.
4) Run hard repair / offline defrag and IsInteg on the database.
5) Once the database is mount-able
6) Swap the database from RSG to production and production to RSG
7) Mount both database
8) Start Merging smaller database from RSG into production
9) End Result = ZERO downtime for users (except few minutes of copying database)


Author Closing Comment

ID: 38305931
Both solutions are great, but alas neither will correct my issue.<br /><br />It turns out that my array is corrupt.  Dell informed me that the "Punctured" drives means the array, itself, is bad.  The solution.... Delete the array and recreate it (twice) to flush out the stored array information, then restore from backup.  <br /><br />I was able to determine that part of the mailbox database was stored on the 10 bad clusters on the drive (before drive replacement) and that replacing the drive allowed the array to recreate the 10 bad clusters on the new drive.  <br /><br />Bottom line, I ran a chkdsk to let the OS find and mark the "bad" clusters so they would not be used again.  I lost 40Mb of a 100Gb database.  I am receiving periodic check errors from ESE that I will address with either eseutil, or splitting my 100G information store into multiple 30G stores, thus performing the error correction and defrag when the mailboxes are moved to a new store.<br /><br />The wipe and restore from backup is another issue entirely.

Featured Post

Restore individual SQL databases with ease

Veeam Explorer for Microsoft SQL Server delivers an easy-to-use, wizard-driven interface for restoring your databases from a backup. No expert SQL background required. Web interface provides a complete view of all available SQL databases to simplify the recovery of lost database

Question has a verified solution.

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

Want to know how to use Exchange Server Eseutil command? Go through this article as it gives you the know-how.
How to effectively resolve the number one email related issue received by helpdesks.
In this video we show how to create a mailbox database 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 Servers >> Data…
A short tutorial showing how to set up an email signature in Outlook on the Web (previously known as OWA). For free email signatures designs, visit https://www.mail-signatures.com/articles/signature-templates/?sts=6651 If you want to manage em…
Suggested Courses
Course of the Month18 days, 2 hours left to enroll

829 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