How to Reduce, Shrink & Defrag Large Exchange EDB File Size?

Admin | How to's Technology | 3 minutes read | Last updated on February 8th, 2023,

There are different ways available which can be applied to reduce the size of Exchange EDB file.

At times, Exchange Administrators do not realize the increasing size of Exchange databases. This usual growth cause inaccessibility issues and sometimes leads to mounting. Fortunately, there are multiple ways to reduce Exchange EDB file size. Some are discussed here:

Delete unnecessary records from database

It is one of the common method to shrink EDB size in an effective way. Discarding useless data will create free space to add up new data. But also ensure to not end up erasing essential data accidentally. And unexpectedly, that after deletion you may not realize any change in EDB file size. But no worries, the space freed by data deletion is there and Exchange will use it for adding new data in spite of increasing the size of the database.

Implement Offline Defragmentation or Copy Data to a New Database

Offline defragmentation helps to retrieve the free available space (known as white space) in Exchange database. The process compacts database, eliminates unused or blank space and reduce the size of the database. Therefore, it effectually brings the stability in storage. And Microsoft provide Eseutil that helps in defragmentation. However, the process includes some drawbacks too like slow processing and can be executed after dismounting the database (it means that all database mailboxes cannot be accessible for specific period of time).

Eseutil to Defragment EDB Storage Space

Run the following discussed cmdlets in Exchange Management Shell to get the white space in large amount:

Before starting the process of defragmentation, make sure you have sufficient free space (110% of the database size) available on the server or network. Now stop Exchange Information Store service and follow the process to perform defragmentation:

  1. Navigate to Exchange database file location in Exchange Management Shell.
  2. Dismount Exchange database on which defragmentation needs to be performed.

  1. Run the command to perform defragmentation:

  1. Again mount the Exchange database by running:

  1. Once the defragmentation process completes, start Information Store service.
  2. Check if database is mounted and cross-check if emailing is properly working.
  3. Finally, check the white (free) space to verify if defragmentation is performed successfully or not.

Note: Eseutil implements the process with the speed of 9GB/hour and varies according to system and hardware environment.

Some of the Exchange administrators are also there that creates a new database instead of performing the defragmentation process, and then transfer old mailbox mailboxes to new one (the older one can be deleted later once moved successfully). With this, one can get the same result as defragmentation. The advantage of executing the process is that downtime of mailbox is negligible. Moreover, it can be implemented from Exchange interface like EMC (Exchange Management Console).

Get Data Backup and Delete from Server

In order to reduce the EDB file size, Exchange administrators can take the backup of unnecessary data and discard the same from the server. They can make use of Windows Server Backup facility for backup purpose. And in order to export the data, they can opt ExMerge or export cmdlets depending upon Exchange edition.

If you are having Exchange 2010, then use the below cmdlets to export mailbox to PST file:

New-MailboxExportRequest -Mailbox <Mailbox Name> -FilePath


There are many users who are dealing with the same issue, and in the above sections, we have provided multiple ways that you can try to reduce the size of Exchange database. But before implementing any process, do take the backup of all the data and then go with the discussed method.