Share via


Microsoft Exchange Server 2007 will reach end of support on April 11, 2017. To stay supported, you will need to upgrade. For more information, see Resources to help you upgrade your Office 2007 servers and clients.


Applies to: Exchange Server 2007, Exchange Server 2007 SP1, Exchange Server 2007 SP2, Exchange Server 2007 SP3

The Exchange Server Database Utilities (Eseutil.exe) is a tool that you can use to verify, modify, and repair an Exchange database file. When a database is corrupt or damaged, you can restore data from backup or repair it using Eseutil. Eseutil is a command-line tool that works with the Extensible Storage Engine (ESE), database files, and log files associated with a Microsoft Exchange database. Eseutil is located in the Exchange default install folder, which is <SystemDrive>:\Program Files\Microsoft\Exchange Server\Bin.

Eseutil can be used against any ESE database in Exchange Server 2007. In the past, Eseutil could only be used with mailbox and public folder ESE databases, but with Exchange 2007, Eseutil can be used with ESE databases on the Exchange 2007 Hub Transport and Edge Transport server roles as well.


Streaming (.stm) files are not supported by Eseutil in Exchange 2007 databases. However, Eseutil supports .stm files in older Exchange databases. If you are working with databases in versions of Exchange that precede Exchange 2007, use the Eseutil tool that is associated with that version of the Exchange database.

Eseutil can be run on one database at a time from the command prompt. You can use Eseutil to perform a range of database tasks including repair, offline defragmentation, and integrity checks. Table 1 lists the most common Eseutil switches.

Eseutil examines the structure of the database tables and records at the low level of the database (Ese.dll). You can use the defragmentation mode to compact a database offline. Other Eseutil modes such as repair, recovery, and restore can be used to repair a corrupt or damaged database. Modes like integrity, file dump, and checksum can be used to verify the state of a database.

Table 1   Common Eseutil switches

Eseutil mode Switch Description



Defragments the database offline but leaves the new, defragmented database in the temporary location with or without overwriting the original database. This mode reduces the gross size on the disk of the database (.edb) by discarding most empty pages and by rebuilding indexes.



Repairs a corrupt offline database by discarding any pages that cannot be fixed. In repair mode, the Eseutil tool fixes individual tables but does not maintain the relationships between tables. Use the Information Store Integrity Checker (Isinteg.exe) tool to check and fix links between tables if the repaired database is a mailbox or public folder database.



Displays restore log file (Restore.env file) and controls hard recovery after restoration from legacy online backups.



Replays transaction log files or rolls them forward to restore a database to internal consistency or to bring an older copy of a database up to date.



Verifies the page level and ESE level logical integrity of the database. Does not verify integrity at the application level. Application-level logical integrity can be verified with Isinteg for mailbox and public folder databases.

File Dump


Displays headers of database files, transaction log files, and checkpoint files. Also displays database page header information, and database space allocation and metadata.



Verifies checksums on all pages in the database, log files, and checkpoint files.

Copy File


Performs a fast copy of very large files.

For More Information

For more information about Eseutil, see the following topics: