How to repair Exchange Database using Eseutil utility

The blog summarizes the best approach to repair Exchange Database using Eseutil utility. It also describes the disadvantages associated with Eseutil utility and suggests the most reliable and professional solution towards the end.

We aware of the fact that many Exchange administrators come across Exchange Database error more often due to several unwanted reasons which lead to Exchange Server data loss situation. However, when such situation arises, then an inbuilt utility called Eseutil comes to the rescue of entire Exchange administrators.

Possible reasons for Exchange Server Database corruption

There are mainly two possible reasons for Exchange Server Database corruption.

    1. Physical corruption
    2. Logical corruption

Let’s explain each one in detail:

  • Physical corruption: Physical corruption occurs due to corrupted drive or other hardware issues. In other words, physical corruption arises due to hardware failure. Few of the physical corruption errors are listed here:
      1. Exchange jet error 1018 (JET_errReadVerifyFailure)
      2. Exchange jet error 1216
      3. 1022 (JET_errDiskIO)
      4. Unable to mount Exchange Server
      5. 510 Jet_errLogWriteFail
  • Logical corruption: Logical corruption occurs due to damaged database objects. It also happens at application level where users face corruption in the file header. It affects the Exchange Server Database which leads to inaccessibility of Exchange EDB files.

What is an Eseutil utility?

Eseutil is an inbuilt utility which is automatically installed with the Exchange Server. It helps Exchange administrators to repair minor issues within the Jet Engine or Extensible Storage Engine (ESE) of Exchange Database. It also helps to resolve integrity issues, database repair, offline defragmentation, etc. The default location of Eseutil utility is C:\Program Files\Exchsrvr\Bin directory.

Eseutil command options and their brief description:

Option:Eseutil /d

Description: This command is used to defragments the offline database to compact its size.

Option: Eseutil /c

Description: Using this command, one can restore database during an online backup.

Option: Eseutil /r

Description: The /r command can be used to restore a database and bring it in a stable state quickly.

Option: Eseutil /p

Description: It can be used to repair corrupted database file. However, data loss situation may occur while performing this command.

Option: Eseutil /g

Description: This command is used to verify the integrity of page level and Extensible Storage Engine (ESE) level.

Option: Eseutil /k

Description: It is used to verify checksum test of entire log files and database pages.

Option: Eseutil /m

Description: It is used to perform header dump of checkpoint files, database files, log files, etc.

Option: Eseutil /y

Description: It performs safe and quick copy of huge database files.

Manual method to repair Exchange Server Database

In order to repair Exchange Server Database, Microsoft has provided a built-in utility called Eseutil. It helps users to repair their Exchange Server mailbox data and its associated files. The main Eseutil utility command to repair Exchange database is ESEUTIL/P <databasefilename>.edb.

Disadvantages of Eseutil command line utility

  • Complex and time-consuming process
  • The incorrect command could lead to the data loss situation
  • Required strong technical knowledge.
  • Need to have the high storage capacity to run this utility.

What if Eseutil doesn’t work?

If the manual method fails to repair corrupt Exchange database, you can opt for professional Exchange Recovery tool. It will address entire Exchange Database related issues accurately without altering original data.

The Final Words

In this blog, we have described both the manual and professional solution to repair Exchange Database EDB files. Although, if you are not a tech-savvy guy, I will advise you go for professional solution straightway.