How to Perform Exchange 2013 Mailbox Health Check?

Ashwani Tiwari ~ Modified: January 7th, 2021 ~ Exchange Server ~ 6 Minutes Reading

Working with Exchange 2019, 2016, 2013, 2010 environment, you must be aware of the fact that Exchange Mailboxes are quite prone to corruption. It is not that mailboxes will show signs before getting corrupt. Mailboxes can become damaged all of a sudden crash and you have to suffer due to this. Since “prevention is better than cure,” the best way to fight this corruption is to check Exchange database health and learn about it as early as possible.

This is what makes Exchange 2013 mailbox health check very important. If you do not know how to do health checkup of Exchange mailbox, do not worry. At first, we will learn how to get the basic information about your Exchange 2013 mailbox and other latest versions like Exchange 2019, 2016, 2010 etc.

How to Check Exchange Database Health In 2010 / 2013 / 2016 Environment?

In order to check Microsoft Exchange Server database health status, we have to run Get-MailboxStatistics command in PowerShell. After this command is run, users will get four information about each Exchange mailbox. These are:

  • Mailbox display name
  • Mailbox item count
  • Status of mailbox storage limit
  • Last login time

Note: If you find any kind of Corruption in Exchange Database then, Exchange Administrator & Users can try SysTools Exchange Recovery Tool to repair Exchange Mailbox and to make again EDB File in Healthy State. This recovery manager for Exchange database tool can fix EDB file issues from MS Exchange 2019, 2016, 2013, 2010, 2007 etc.

Download purchase

Point to be Noted: Fixing issues in MS Exchange Server EDB file is very common. Repair EDB file using the above-suggested application is simple and safe. Before that, we can see how to do healthy checks on Exchange mailbox data. The above-listed command does not show us how much data each mailbox contains. To know that information, we have to use another command:

Get-MailboxStatistics | ft DisplayName,TotalItemSize,ItemCount

Using this command, we can avail below information:

  • Name of the mailbox
  • Total size of the mailbox items
  • Total number of mailbox items

Till now, we were talking about the entire Exchange server. If someone wants to know about any individual mailbox, run this command:

Get-MailboxStatistics | fl username

Once this script is run, users will get the information about the mailbox of that particular user. The information will include:

  • Display name
  • Item count
  • Last Logon time
  • Last logoff time
  • Total item size
  • Deleted item size
  • Storage limit status

Additional Health Check Commands For Exchange 2016/ 2013 / 2010 Environment

In the previous section, we talked about commands that will fetch the basic Exchange 2013 mailbox statistics. In this section, we will tell you which scripts to use if you want to know some advanced information to check user mailbox health in Exchange 2019, 2016, 2013, 2010, 2007 and below environment.

  • Sort mailboxes based on mailbox size
Get-MailboxStatistics | Sort-Object TotalItemSize –Descending | ft DisplayName,TotalItemSize,ItemCount

This command will allow users to get basic stats by displaying the results sorted in descending form. Users can change a bit in this command to get the results in ascending form.

Get-MailboxStatistics | Sort-Object TotalItemSize –Ascending | ft DisplayName,TotalItemSize,ItemCount
  • Display mailbox size in KB
Get-MailboxStatistics | Sort-Object TotalItemSize -Descending | ft DisplayName,@{label="TotalItemSize(KB)";expression={$_.TotalItemSize.Value.ToKB()}},ItemCount

This command will convert the total item size into Kilobyte from bytes. Thus, it will be easy for the users to know the actual size of the mailbox. If you want to view the size in Megabyte or Gigabyte, use TotalItemSize.Value.ToMB and TotalItemSize.Value.ToGB respectively in the command.

How to Check Exchange Database Health In 2010 / 2013 / 2013 versions?

Earlier, IsInteg tool was used to find out the corruption issues in Exchange mailbox. This got replaced by New-MailboxRepairRequest cmdlet since Exchange Server 2010. So, for Exchange 2013 mailbox health check, New-MailboxRepairRequest needs to be used.

  • PowerShell Command to Check Mailbox Corruption
New-MailboxRepairRequest -Mailbox alice -CorruptionType ProvisionedFolder,SearchFolder –DetectOnly

This command will find out the corruption in the provisioned folders and provides a report on them. This script will also detect search folder corruption.

Note: Remember that this command is not equipped to repair Exchange 2013 mailbox.

To repair, use the below command:

New-MailboxRepairRequest -Mailbox alice -CorruptionType ProvisionedFolder,SearchFolder, AggregateCounts,Folderview -Archive
  • PowerShell command to check and repair single mailbox corruption
New-MailboxRepairRequest -Mailbox [email protected] -CorruptionType FolderView

This command will perform both detection and repairing of a single Exchange2013 mailbox.

  • PowerShell command to check health and repair multiple mailboxes.

This command can check corruption in a set of mailboxes that contain some common Custom Attribute and then repair them.

Get-Mailbox -Filter {CustomAttribute4 -like "Repair Required"} | New-MailboxRepairRequest -CorruptionType SearchFolder,AggregateCounts,ProvisionedFolder,FolderView

How to Perform Health Check of Exchange 2013 Mailboxes

Besides checking the health status of Exchange mailbox, users often need to learn about the condition of entire Exchange environment. Especially Admins find it important to keep track of what is happening in Exchange Server. There are some Health Mailboxes created in Exchange to view the information of Exchange infrastructure.

Use Get-mailbox –Monitoring command to check the health status of Exchange 2016 / 13 / 10 and other environments. Once run, it will display all Servers situated in the entire Exchange environment. If there are no issues with any mailbox, the result should appear like this:

If any health mailbox file is corrupted, then you find an error similar to below image:

To fix this health mailbox, file, you need to locate these corrupted health mailbox files, for that

  1. Open Administrative Tool >> Active Directory Administrative Center.
  2. Now Open “Microsoft Exchange System Objects” and Go to Monitoring Mailboxes.
  3. Now Locate the corrupted file and deleted it.
  4. Now we need to Recreates the file again for that Restart “Microsoft Exchange Health Manager” again to create New Health Mailboxes again.

Using the above command and steps, Exchange user can check health mailbox status of Exchange infrastructure and user mailboxes easily and other properties of mailboxes that help to know the current status of the mailbox.


Always Maintain Exchange Server Environment to avoid any kind of messaging errors and to avoid data-loss of user mailboxes. For that use Powershell Command to command to check Exchange Database health of 2007 / 10 / 13 / 16 environment. Use PowerShell command Get-MailboxStatistics to know meta-details of Exchange mailboxes and get -mailbox | monitoring to find any kind of corruption in Exchange database.

Queries – Exchange Health Check

What is the Exchange Health mailbox?

Exchange Server 2013 came with a new feature to monitor system with self-recovery capabilities called Managed Availability. This built-in feature performs continuous tests that simulate end-user actions, and it can detect possible problems with Exchange components or its dependencies easily.

How do Exchange 2013 check mailbox for corruption?

To check Exchange mailbox corruption, use IsInteg or New-MailboxRepairRequest. This is the best way for auditing regular Exchange database (.edb) file health and to check its Integrity. Fix the corruption in EDB file via Eseutil Powershell commands as given.

What is the command to check Exchange Database health?

To check Microsoft Exchange Server database health status, you can run Get-MailboxStatistics command in PowerShell. Running this command will provide four information about each Exchange mailbox.