There are different ways to prevent downtime on your Exchange server but you cannot prevent disasters. The only thing you can do, for unforeseen circumstances, is to deal and resolve the situation with least downtime or data loss and restore the services as soon as possible. A lot of issues can be prevented. In this post, we discuss ways to prevent such disasters.
First, let’s talk about the Exchange Server and the reasons that can cause a disaster in the mailbox databases. An Exchange Server can be rebuilt but the data cannot. So, we will focus on the mailbox databases.
The mailbox database is designed to work with Memory, Log Files and the actual database file (EDB). Data is stored and processed in the log files and memory as a buffer, until the data is committed to the database. This occurs during a backup. This helps to reduce the load on the database and corruption. The health of the database is crucial for an Exchange server to work properly.
Common Issues and their Solutions
Below given are some common occurrences that could hinder the integrity of the database and prevent it from being mounted due to corruption:
An antivirus software which is not Exchange Server friendly can lock the database or log files and possibly delete log files, if it is aggressively scanning the storage. Therefore, the Antivirus must be Exchange Server aware. So, make sure that when you purchase an antivirus solution, it is compatible with the Exchange version you’re using.
2. Backup Software
Like the Antivirus, the Backup software must be application aware as well. Since the mailbox database is open most of the time, the backup process can corrupt it while trying to back it up. If you try to back up the Exchange Server, you might end up having an unusable backup as you wouldn’t manage to restore it. A backup software, which is not application aware, will end up consuming all your hard drive storage. This is because the logs are never committed to the database, resulting in a hard drive full of logs.
When you purchase a backup software, you need to make sure that it is application aware and compatible with the version of your Exchange Server.
If you are using or planning to use Windows Server Backup, you need to configure the job. Here are the steps to do so:
- Click on Custom while creating the job
- Click on Add Items and select all the drives except the backup drive
- Click on Advanced Settings
- Click on VSS Settings
- Tick VSS full Backup
This should backup the database successfully.
3. Storage Issues
When the storage, where the databases and logs are stored, is full, the users would be unable to send or receive emails. This can also lead to corruption in your database or logs. To prevent such issue, set up a monitoring software that can send notifications or SMS when the storage is low. Of course, in first place, it is better to have ample storage for the database and logs.
4. Viruses, Malware and Ransomware
Apart from the loss of data, these malicious programs can hinder the working of servers. These could also make a server totally lost. A database without the server cannot work and Exchange databases are not easily ported to another server. Therefore, having a good antivirus software and healthy backups will surely come in handy when such a disaster strikes.
5. Sudden Loss of Power
A sudden loss of power would happen due to electricity cut, or a hardware failure of the server such as motherboard, RAM, etc. The sudden loss of power can damage the database or logs. During a normal shutdown, the database is closed properly. However, in case of sudden loss of power, it’s abruptly stopped.
You can’t prevent hardware issues but what you can do is to have resilience. You can get a spare server and replace the hardware on the spot, but the server would still be abruptly stopped. It is suggested to have a virtual infrastructure so that you don’t need to worry about the hardware specifics and have virtual machine failover between two physical servers. This will give you hardware resilience as the virtual machine automatically shifts to another host, if the host fails.
For prevention from electricity cuts, install a UPS with enough power (like 1KVa) to protect the server, if any power is dropped for a few minutes. This will also act as a voltage regulator. The server must have dual power supply - one connected to the UPS and the other to direct electricity supply.
On the other hand, you can have resilience of the Exchange Server by setting up a DAG system, with two Exchange Servers running as Active/Active where all the mailbox databases are replicated between the servers. So, if one server goes down, the users will automatically switch from one server to another. For this kind of setup, you need to consider the budget for the licenses and resources required.
There are several culprits that could hinder the health of your mailbox database and corrupt it, resulting in a Dirty Shutdown state of the database. There are other culprits also such as a bad Windows update, third-party application installation, human error and much more.
When a database is not mountable, you can use the ESEUTIL, which is a native tool of Microsoft, to perform a soft repair or a hard repair. You can first try the soft repair to recover the database. If the damage is low and fixable, the tool might fix the problem. But if it doesn’t and the database cannot be mounted, you need to try the hard recovery. It is to be noted that the hard recovery purges the damaged data from the database and results in data loss. For example, if the database has 40% damaged items, you will have a 40% data loss.
Alternatively, you can look at a third party application such as Stellar Repair for Exchange. The application can open any version of Exchange Database, being corrupted or not, and export the data to PST and other formats. It can also export the data directly to a live Exchange Database or Office 365. In case your database is not mounting, you can create a new database. With the help of Stellar Repair for Exchange, you can export the mailboxes from the broken EDB file directly to the newly created database with no hassle and restore the services with minimum downtime.