How to Run Eseutil /K in Checksum Mode
Topic Last Modified: 2006-06-09
This section explains how the Eseutil /K checksum mode works on Exchange Server 2003 databases, and covers basic operation procedures. Exchange 2003 uses a checksum procedure, by using the /K switch, to confirm the data integrity of pages in the database. You can also use the switch to perform a checksum procedure on a streaming file. For more information about how to use Eseutil in checksum mode, see Eseutil /K Checksum Mode.
|Before you use the Eseutil tool, use Exchange System Manager to dismount the stores that you want to examine.|
The checksum feature does not run a database recovery. If a database is inconsistent, or in a "dirty shutdown" state, we recommend that you perform a recovery operation to make sure that database operations are completed correctly. After you perform the recovery operation, you can use the Eseutil utility to perform the integrity check.
Enter this basic syntax at the command line to checksum an ESE database, streaming database, transaction log, or checkpoint file:
ESEUTIL /K <filename>
Note: Replace <filename> with the path and name of the file that you want to checksum
The following optional command-line switches are associated with the /K switch:
/s<filename> Use this switch to specify the streaming file name. The default setting is none.
/t<db> Use this switch to specify the temporary database name. The default name is Tempchksum*.edb.
/e Use this switch if you do not want to perform a checksum procedure on the database file.
/i Use this switch if you do not want to perform a checksum procedure on the streaming file.
/o Use this switch to suppress the Microsoft logo.
Click Start, and then click Run.
In the Open box, type cmd, and then click OK
Switch to the C:\Program Files\ExchSrvr\Bin folder, type one of the following commands (as appropriate for your situation), and then press Enter:
To check the integrity of the public information store database:
ESEUTIL /K "c:\program files\exchsrvr\mdbdata\pub1.stm"
To check the integrity of the private information store database:
ESEUTIL /K "c:\program files\exchsrvr\mdbdata\priv1.stm"
If you want to save time by checksumming only the files in question, you can use the /E (ignore EDB) or /I (ignore stm) switches. If you use the /E switch, the checksum table for the streaming database is read from the edb file, but no other edb file pages are checksummed. Using the .stm file name in checksum mode will checksum only the first two header pages of the streaming database. For example:
ESEUTIL /K priv1.edb /E (checksums stm file only)
ESEUTIL /K priv1.edb /I (checksums edb file only)
ESEUTIL /K priv1.stm (checksums stm header pages only)
Note You cannot checksum the whole streaming file unless the database files are in a Clean Shutdown state. This is because the table storing the checksums in the streaming file is in the edb file. If the database is not in Clean Shutdown state, you cannot know for sure that this table is completely up to date and valid.
The following is the command line reference that can be obtained by running eseutil /? and then K from the Exchsrvr\bin folder:
CHECKSUM: DESCRIPTION: Verifies the checksums of a database, streaming file, checkpoint file, or log file (or set of log files). SYNTAX: ESEUTIL /k <file name> [options] PARAMETERS: <file name> - file name to verify OPTIONS: zero or more of the following switches, separated by a space: /s<file> - set streaming file name (default: NONE) /t<db> - set temp. database name (default: TEMPCHKSUM*.EDB) /p<x> - add artificial 1 second pause once every x I/O's (default: no pause) /e - don't checksum database file /i - don't checksum streaming file /8 - set 8k database page size (default: auto-detect) /o - suppress logo NOTES: 1) This operation does not run database recovery. If the database file (.edb) is in a "Dirty Shutdown" state it is not possible to verify checksums in the streaming file (.stm). 2) If the file is not a database file, the options are ignored. 3) If the file is a streaming file, only the header is verified and not the data pages. 4) The pause (/p) option is provided as a throttling mechanism. It only applies when verifying checksums of a database file.
For more information, see the following topics in the Exchange Server Database Utility Guide: