How to Fix “Exchange Database Status Unknown”

Summary: The ‘Exchange database status unknown’ error is displayed when you check the database status by using the EAC or Get-MailboxDatabase cmdlet. In such a case, the email flow and Exchange performance slows down as messages sit in the messaging queue for a while before they are sent or delivered. In this guide, we discussed a few workarounds to fix Exchange database status unknown error in the Exchange server environment and methods to restore the mailboxes and email communication.

A regular check on Exchange database status is required to ensure smooth operation. If a database gets dismounted or corrupt due to hardware or software problems, it can disrupt the email flow as messages get stuck in the messaging queue and severely impact the business continuity. But sometimes, even when the database is mounted and online, the Exchange mailbox database status is displayed as ‘Unknown’ in the Exchange Admin Center (EAC).

You can also check the database status in the Exchange server by using the following PowerShell cmdlet,

Get-MailboxDatabase –Status | Format-Table Name, Server, Mounted

When an Exchange database mount status is shown as Unknown, the email flow is disrupted.

One obvious solution to fix this problem is to dismount the database and then mount it again by using Mount-Database PowerShell cmdlet or Exchange Admin Center. However, when this error appears, you may fail to dismount the database for repair.

To resolve this error, you can apply a few workarounds discussed below. If the workaround does not work, repair the database or extract mailboxes from the Exchange database by using an Exchange recovery software and restore them in a new or existing database on the live Exchange server. This will help you resume Exchange connectivity and email flow.

Reasons for Exchange Database Status Unknown Error

Below are a few reasons that may lead to the Exchange mailbox database status unknown error.

  1. Corrupt or damaged database file
  2. Error may appear after renaming the database via EAC
  3. Missing DNS entry for the Exchange virtual server
  4. Microsoft Exchange Services stopped or not working

How to Fix ‘Exchange Database Status Unknown’ Error?

Following are a few solutions to fix the Exchange database status unknown error and restore user mailboxes:

1. Restart the Exchange Server

Restarting a system or server can fix many problems. Sometimes, the changes you make on the server or database, like renaming the database, does not take effect unless the server is restarted. Thus, if you are seeing the ‘Unknown’ status under database status in Exchange, try restarting the system.

It should ideally fix this issue and display the Exchange database status as either ‘Mounted’ or ‘Dismounted’. If it’s dismounted after a restart, use Mount-Database cmdlet or EAC to mount the database file.

2. Check and Restart Exchange Services

The error may also appear due to a problem with Exchange services. If the required Exchange services are not running on the server, such as Microsoft Exchange Replication Service, it may lead to Unknown status. Thus, you can check and manually start/restart the required Exchange services. The steps are as follows,

  1. Press Windows+R, type services.msc, and press ‘Enter’ or click ‘OK’ to open the Services window
  2. Now search and check if all Microsoft Exchange services are running
  3. If a service is not running, right-click on the service and choose ‘Restart’
  4. Repeat the step to restart all Microsoft Exchange services

After this, restart the server (system) and check the database mount status. If it’s mounted, you don’t need to perform any further action. However, if the database status is displayed as dismounted, use EAC or Mount-Database cmdlet to mount the database on the server after backup.

3. Repair the Database

If the database status does not change or is displayed as unknown or dismounted, you can attempt database repair by using the following EseUtil commands.

First, check the database state by using the following command in command prompt.

eseutil.exe /mh <path to EDB file>

If the state is dirty, use the following command to recover the database,

eseutil/r <path to EDB file>

 You may further attempt Hard recovery if the above command for Soft recovery fails,

eseutil /p <path to EDB file>

Then check the database status,

eseutil.exe /mh <path to EDB file>

If this doesn’t resolve the issue and database status is still unknown, it indicates severe damage or corruption in the database file. To fix this, you can use an Exchange recovery software, such as Stellar Repair for Exchange.

The software repairs the database file, extracts mailboxes and saves all mailboxes in the PST file. You can also create a new database on the Exchange server and then import the mailboxes from the corrupt database file to this new or existing database on live Exchange directly with the help of Stellar Repair for Exchange software.

Conclusion

As an Exchange admin, you should check the Exchange database mount status on a regular basis. It should be a part of your server maintenance checklist. This will help you know whether the database is mounted or dismounted and act accordingly. But sometimes, it may display mount status as Unknown, which can severely impact the email flow.

In such a case, follow the solutions explained in this blog to resolve the Exchange database status Unknown problem. You can also extract and restore the mailboxes from such an Exchange database by using an Exchange recovery software, such as Stellar Repair for Exchange. You can download the software for free to fix the database status Unknown issue. By using the software, you can move mailboxes from the damaged database to a new or existing database on live Exchange directly.