Select the product you need help with
How to defragment Exchange databasesArticle ID: 328804 - View products that this article applies to. This article was previously published under Q328804 INTRODUCTION
The disk defragmentation process rearranges the data that is stored on the computer's hard disks so that the files are more contiguous. Defragmentation helps increase data access and retrieval speed. When you defragment your hard disks, you can increase disk performance and help the servers in your organization run more smoothly and efficiently. You can use the Eseutil utility to defragment the information store and directory in Microsoft Exchange Server 5.5 and to defragment the information store in Microsoft Exchange 2000 Server and in Microsoft Exchange Server 2003. The utility can run on one database at a time from the command line. Defragmenting an Exchange 2000 or Exchange 2003 database To defragment an Exchange 2000 or Exchange 2003 database, follow these steps: click here to expand or collapse the steps Defragmenting an Exchange Server 5.5 database Collapse this image ![]() Back up the database Because offline defragmentation rearranges the data in the Exchange databases, use the Backup utility immediately after defragmentation to create standard backups of the databases that secure the new data arrangement. Earlier incremental or differential backups are no longer useful because they refer to database pages that were rearranged by the defragmentation process. For more information, see 258243: How to back up and restore an Exchange computer by using the Windows Backup program
(http://support.microsoft.com/kb/258243#appliesto)
.Fragmentation of Exchange dataThe fragmentation of Exchange data occurs on a different level than regular disk fragmentation. The fragmentation of Exchange data occurs within the Exchange database itself. If you run regular disk defragmentation on an Exchange computer, you should do it during off-hours and preferably with Exchange databases stopped. Disk defragmentation is a very I/O intensive process. Therefore, the Exchange database engine could have problems accessing the hard disks in a timely manner. By default, Exchange databases run a defragmentation process daily. The defragmentation option makes used storage contiguous, eliminates unused storage, and compacts the database. This reduces the database's size. Eseutil copies database records to a new database. When defragmentation is complete, the original database is deleted or saved to a user-specified location, and the new version is renamed as the original. If the utility encounters a bad record, the utility stops and displays an error message. Online defragmentation Exchange database online defragmentation occurs automatically as part of the database maintenance process. Online defragmentation detects and removes database objects that are no longer being used. The online defragmentation process provides more database space without changing the file size of the database. By default, Exchange is configured to run online defragmentation daily between 01:00 and 05:00. Collapse this image ![]() To schedule database defragmentation, use one of the following methods:
Although online defragmentation provides some additional database space, you must defragment the Exchange database offline to reduce the physical size of the Exchange database. Use the Eseutil utility (Eseutil.exe) to perform offline defragmentation when your mailbox stores and public folder stores are offline. Collapse this image ![]() Eseutil is an Exchange utility that you can use to defragment, to repair, and to examine the integrity of Exchange databases. For example, you might perform offline defragmentation if you recently moved many users from a server that is running Exchange. In that case, offline defragmentation reduces the size of the Exchange databases by rearranging the data on the server's Exchange databases and discarding any unused database pages. By default, the Eseutil /d command defragments a database by creating a new database, copying the old database records to the new one, and discarding any unused database pages. This creates a newly organized compact database file. Use the following database switch to run Eseutil defragmentation on a specific database:
eseutil /d Database_Name [options]
where Database_Name is the file name of the database that you want to compact.Another option is to run Eseutil together with the /d /p switches at the command line to create the new defragmented database in a separate location. fFr example, you could create the new defragmented database on a different hard disk. By using the /p switch, the offline defragmentation process preserves the original database un-compacted, and the temporary file that is created is the defragmented version of the database. This is known as turning off instating. Unlike the standard offline defragmentation process (Eseutil /d), if you run Eseutil with the /d /p option, the original database is not overwritten with the new defragmented database when the offline defragmentation process is completed. The /d /p option can also significantly reduce the time that is required to defragment large databases because you do not copy the defragmented database from the temporary location and overwrite the original fragmented file. However, if you want to mount the defragmented database after you use this option, you must manually move the defragmented .edb and .stm files into the database path and rename them to the correct database file names. For example, if Tempdfg.edb and Tempdfg.stm are the defragmented files that you created by running the /d /p option, you must rename Tempdfg.edb to Priv1.edb and rename Tempdfg.stm to Priv1.stm. You must do this if Priv1.edb and Priv1.stm are the databases that you originally ran Eseutil against. The following example command defragments a database that is named Mailbox Store.edb and its accompanying streaming file, turns off instating, and creates the defragmented databases on the D drive. Note that there is no space after /t. eseutil /d /p "c:\program files\exchsrvr\mdbdata\mailbox store.edb" /t"d:\tempdfg.edb" Collapse this image ![]() Additionally, you may want to use the following options when you use Eseutil to defragment the Exchange databases: Collapse this table
Collapse this image ![]() D:\>eseutil /d /ispriv You can also use the /t switch to set the name for the temp database and for a different location. For example, to create a Sample.edb on the root of drive D when you are running the eseutil command from drive C, run the following command: C:\>eseutil /d /ispriv /td:\Sample.edb Collapse this image ![]() Additional Resources
For more information about how to use Eseutil /d to defragment a database and the streaming file associated with the database, click the following article number to view the article in the Microsoft Knowledge Base:
254132
For more information about Exchange Server versions 4.0 and 5.0, click the following article number to view the article in the Microsoft Knowledge Base:
(http://support.microsoft.com/kb/254132/
)
Eseutil /d defragments the database and the streaming file
163627
(http://support.microsoft.com/kb/163627/
)
How to defrag an EDB file on a non-Exchange server
Properties | Article Translations
|
