Share via


Exchange Server Database Utility Guide

 

When a database is corrupt or damaged, data can be restored from backup or repaired using Eseutil. Eseutil is a command line utility that works with Extensible Storage Engine (ESE), database (.edb) files, streaming (.stm) files, and log (.log) files associated with an Information Store, in a given Storage Group. Eseutil is located in the C:\Program Files\Exchsrvr\Bin folder in Exchange Server 2000 and in Exchange Server 2003. The tool can be run on one database at a time from the command line and can be used to perform a range of database tasks from repair, offline defragmentation, and integrity checks in Exchange Server 5.5, Exchange Server 2000, and Exchange Server 2003. The most common Eseutil switches are listed in the table below.

Note

Download Microsoft Exchange Server Database Utility Guide to print or read offline.

Eseutil Repair, mode can be used to repair a corrupt or damaged database while recovery and restore modes can be used to replay transaction log files into a database. The file header dump modes can be used to correlate database and transaction log files and to determine other information about them. The checksum mode can be used to verify the file integrity of a database. The copy file mode is useful for very rapid copying of large files. The defragmentation mode can be used to compact a database offline, reducing the size of the database files by removing empty space.

Topics in this guide give you an understanding of the Eseutil repair tool, tell you about scenarios where you can use the tool, discuss the different modes giving instructions on how to run Eseutil in those modes, and provide help with troubleshooting common Eseutil errors. For more information about common Eseutil errors, see Reference for Common Eseutil Errors.

Eseutil Mode Switch Description

Defragmentation

/D

Eseutil defragments the database files. This mode reduces the gross size on disk of the database (.edb) and streaming files (.stm) by discarding most empty pages and ad hoc indexes.

For more information, see these topics:

Repair

/P

Eseutil repairs corrupt database pages in an offline database but discards any that can't be fixed. In repair mode, the Eseutil utility fixes individual tables but does not adjust the relationships between tables. ISInteg should be used to check logical relationships between tables.

For more information, see these topics:

Restore

/C

Eseutil displays the Restore.env file and controls hard recovery after restoration from online backup.

For more information, see these topics:

Recovery

/R

Eseutil 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.

For more information, see these topics:

Integrity

/G

Eseutil verifies the page level and Extensible Storage Engine (ESE) level logical integrity of the database but does not verify database integrity at the Information Store level.

For more information, see these topics:

File Dump

/M

Eseutil displays headers of database files, transaction log files, and checkpoint files. The mode also displays database space allocation and metadata.

For more information, see these topics:

Checksum

/K

Eseutil verifies checksums on all pages in the database and streaming files.

For more information, see these topics:

Copy File

/Y

Eseutil performs a fast copy of very large files.

For more information, see these topics:

ISInteg

The ISInteg utility is most often used after an Eseutil repair operation. It can also be used when an event or error warrants it. Several Microsoft Knowledge Base articles recommend the use of ISInteg for resolving specific issues.

ISInteg corrects database problems at the application level of the database. Eseutil corrects database problems at the ESE level. ISInteg understands the database as a collection of mailboxes and items in them, and can correlate and repair information and relationships between mailboxes, folders, items and attachments.

ISInteg was originally created as a utility for internal use by testers in the Exchange development group, and was released publicly because of its general usefulness. It can perform multiple independent and interrelated tests of the database, and can fix discrepancies found. ISInteg cannot comprehensively correct all possible problems in the database, but it is often very successful. Over time, ISInteg has been incrementally improved to make it more robust and useful.

For More Information

For more information about database recovery strategies, see Database Recovery Strategies.

For more information about common Eseutil errors, see Reference for Common Eseutil Errors.

For more information about the ISInteg utility, see the Microsoft Knowledge Base article 182081 "Description of the Isinteg utility" (https://go.microsoft.com/fwlink/?linkid=3052&kbid=182081).

For more information about repairing Exchange databases and disaster recovery, see the Exchange Server 2003 Disaster Recovery Operations Guide (https://go.microsoft.com/fwlink/?LinkId=47570).

For more information about understanding Extensible Storage Engine (ESE) file types, see Extensible Storage Engine Files (https://go.microsoft.com/fwlink/?LinkId=68167).