Exchange database (EDB) files are mailbox database files where mailboxes are created that stores user information and data, such as emails, contacts, attachments, notes, calendar, etc. An Exchange admin can create a mailbox database via Exchange Admin Center (EAC) or Exchange Management Shell (EMS) cmdlets. From Exchange 2016, each mailbox database can have its properties that can be configured via EAC or EMS. Also, each EDB folder consists of the following three files:
- Exchange Database File (.edb)
- Transaction logs (.log)
- Checkpoint files (.chk)
However, these mailbox database files sometimes get damaged or corrupt that results in the loss of all information and data stored in the database (.edb) files.
Exchange database corruption not only affects the business continuity as it hinders the email flow and communication but also leads to data loss. In this guide, we discussed some reasons that may lead to Exchange database corruption. Also, the solutions to fix Exchange database corruption, along with some important tips on how you can avoid Exchange database corruption and data loss.
Reasons for Exchange Database Corruption
Exchange database gets corrupt due to several reasons, such as:
- Power Outage or Unexpected Shutdown
- Hardware Issue
- Software Problem
- Exchange Server Crash
- Dirty Shutdown
- Incompatible Antivirus Software
- Low Storage Space
- Missing or Deleted Exchange Log Files
Types of Exchange Database Corruption
Exchange database corruption can be segregated into two categories:
- Logical Corruption
It is often referred to as Soft Corruption as it occurs due to inconsistency caused by invalid index entries, jet engine database failure, etc. at various levels.
For instance, at database level, there could be cross-object chain linkage issue due to database engine failure or invalid entries. At application level, there could be damage to the database file header or incorrect access control levels.
- Physical Corruption
Physical corruption occurs due to hardware-related issues, such as a hard drive problem. It is considered the lowest level of database corruption and causes severe damage to the Information Store that contains the database file. During physical corruption, you may encounter the following errors:
- 510 JET_errLogWriteFail
- 529 (JET_errLogDiskFull)
- 1018 (JET_errReadVerifyFailure)
- 1032 (JET_errFileAccessDenied)
- 1216 (JET_errAttachedDatabaseMismatch)
- 548 (JET_errLogSequenceEndDatabasesConsistent)
- 528 (JET_errMissingLogFile)
Plus, you can’t mount a corrupt database when it dismounts. In such cases, you can use the backup to restore database. However, if backup is not available or obsolete, you must either repair Exchange database with the help of Exchange recovery utilities or recover mailboxes to Outlook importable PST by using a third-party Exchange recovery software.
Manual Methods to Repair Exchange Database Files
MS Exchange comes with two database diagnostic and recovery tools for Exchange database repair. These are:
- EseUtil (Extensible Storage Engine Utilities)
A command line-based Exchange recovery tool that helps Exchange admins resolve and repair Exchange db corruption. It is also used to perform various database maintenance tasks, such as defragmentation, integrity check, reduce database size, etc. to avoid corruption.
- IsInteg (Microsoft Exchange Information Store Integrity Checker)
IsInteg is also a command-line tool that is used to check the integrity of repaired Exchange database. It understands the relationship between records and tables, and turns them into messages and folders.
You can follow our detailed guide on How to use EseUtil for Exchange Database Repair. However, you may need to perform Hard Recovery by using Eseutil /p that may take significant time to complete, based on the database size. After Hard Recovery, you must run the IsInteg tool for Index Repair and check the integrity of the repaired database. You can find the tool at the following location,
C:>Program Files>Exchsrvr> bin
Then open Command Prompt, navigate to the above location (using cd), and then run the IsInteg test by entering the following command,
Isinteg –s -fix –test alltests
You can repeat the IsInteg test as many times as you want to get rid of all errors. Once the errors are fixed, you can mount the database.
However, before Hard Recovery is started, you are reminded about the data loss that you must confirm and accept to proceed further.
Accepting this data loss warning will start the repair process and may fix the corrupt Exchange database after deleting non-recoverable mailboxes and mail items. Besides, there are several other issues that you may encounter while using EseUtil for repairing Exchange database. These are:
- It may delete mailboxes and data during database recovery
- It may fail to fix the database if corruption is high
- Consumes a lot of time
- Requires good technical skills to execute several commands with accuracy
- A typo in command or wrong command can cause further damage to the database or permanent data loss
- If STM and EDB does not match, EseUtil will not work
- Requires a lot of storage space
- It doesn’t work when STM file is missing
So if you encounter any of these issues during database repair via EseUtil, you can use a third-party Exchange repair tool.
Recover Mailboxes from Corrupt Exchange Database via Exchange Recovery Software
When the Exchange database is severely corrupt or can’t be fixed with the help of Exchange’s EseUtil and IsInteg utilities, you can rely on an Exchange recovery software, such as Stellar Repair for Exchange.
The software scans, repairs, and extracts mailboxes from corrupt database file and provides options to save them in PST, EML, PDF, MSG, HTML, and RTF formats. It also features option to import the mailboxes directly to live Exchange or Office 365. With the help of this Exchange database repair software, you can repair any Exchange EDB file and perform a granular search by using the search filters.
The software helps when Exchange utilities fails to fix the problem and the database is damaged with no possible way to fix it. This helps avoid downtime as it’s quite easy-to-use and doesn’t require any additional permissions, besides access to database file.
The tool helps admins restore the email services in no time.
Why Choose Stellar Repair for Exchange over EseUtil?
Here’s a brief comparison between the two utilities that can help you fix logical and physical Exchange database corruption.
EseUtil |
Stellar Repair for Exchange |
Deletes unrecoverable or damaged mailboxes and data |
Repairs corrupt Exchange database file and recovers all data including deleted mailboxes and mail items |
It may fail to repair Exchange database even after hard recovery |
It repairs Exchange database and recovers mailboxes with 100% integrity |
It’s a command line-based Exchange recovery tool that requires technical skills |
It has easy-to-use graphical user interface that makes database recovery faster and convenient |
It doesn’t provide any save options |
It provides options to save recovered mailboxes to PST, MSG, EML, HTML, RTF, & PDF formats or live Exchange and Office 365 accounts |
Requires a lot of time and doesn’t work when storage space is low |
It’s fast and can save recovered mailboxes from corrupt database to internal or external storage drives |
Does not preview any mailbox or its content during repair or recovery |
It previews all mailboxes and mail items before saving |
Tips to Prevent Exchange Database (EDB) Corruption
Although Exchange database corruption can be resolved by using Exchange utilities and third-party Exchange repair tools, it is better to prevent EDB corruption in the first place. You can follow the given tips to prevent database corruption:
- Install server-grade hardware components
- Maintain a regular backup
- Use MS Exchange Server Best Practices Analyzer (ExBPA) and perform Exchange maintenance tasks regularly
- Install Exchange compatible antivirus or antimalware application
- Ensure enough free storage space in the database and server
Conclusion
Exchange database is a storehouse that stores all mailboxes and mailbox items, such as emails, attachments, contacts, notes, etc. When the database (EDB) corrupts, it dismounts that disrupts the email flow, impacts productivity, and may lead to data loss if not resolved quickly. Microsoft provides two Exchange database recovery utilities, EseUtil and IsInteg that can help Exchange and IT admins to repair Exchange database.
Alternatively, you can use a third-party Exchange recovery software, such as Stellar Repair for Exchange that can resolve such issues more quickly and help you restore users’ mailboxes and communication. While the Exchange utilities require preparations, permissions, and large storage space, along with technical knowledge to recover corrupt Exchange database, this Exchange recovery software recovers and restore the mailboxes from a corrupt database to PST or live Exchange in a few clicks. It even recovers accidentally deleted mailboxes from damaged Exchange database.