In order to start exchange server smoothly, it is quite important that the database is shut down in a proper way. For this, it has to make sure that the database is “detached” to the transaction log files data in transaction log is committed to the database files. However, at the time of starting the exchange server then this condition is checked out and the missing data in the database files and after that it is committed with the help of available log files automatically. If the desired database is detached from the transaction log files the exchange server does not need the previous log files to start up. Such log files prove to be a great asset whenever an older version of database has to be restored. However, it is always recommended not to delete any log files permanently until it is make sure that older version of database is not required to be replayed.
However, in order to check if a database is properly detached or not, you have to verify that if it is in clean shutdown state or dirty shutdown state. In order to examine the state value of Exchange Server database you can follow the below mentioned steps:
First of all click on “Start” button and in the run textbox, you have to enter ‘cmd’ and hit enter.
You May Also Like: Fix Exchange Error 1216 Without Any Hassle
For Public Folders, type the command:
For Private Folders, type the command:
However, it is assumed that Exchange Server is installed at: ‘c:\program files\exchsrvr folder’ and the database is saved at ‘c:\program files\exchsrvr\mdbdata folder’.
If the State = Clean Shutdown then it means that the database is correctly detached.
Database State: Clean Shutdown
If the State=Dirty Shutdown then it means there are some transactions that are awaited to committed to the database.
Database State: Dirty Shutdown
What is Dirty System Shutdown?
As we all know that Exchange Server database is based on JET engine where all log files are responsible to keep a track of all input and output operations in the database file. ESE uses the concept of mailbox database cache so that it can reduce the input-output operation count.
You May Also Like: How to Fix “Exchange Database Size has Grown Too Big” Error
It has been seen that whenever an operation is loaded to the cached memory and it is not committed to the information store then the JET engine marks It as DIRTY. Until the pending transaction is committed to the database then it is always considered as updated and till dirty pages are there in the database then t is considered as inconsistent.
However, until the transaction could have completed, if the system shuts down accidentally then the database remain attached to the log file because of which dirty system shutdown error is received on the screen.
There are two kinds of shutdown error. They are as follows:
Fix Dirty Shutdown In Exchange Database:
You can repair dirty shutdown error with the inbuilt tool Eseutil when all log files are available and in a clean state
In this condition, the solution is the soft recovery of the database where the transaction logs will be replayed with the use of log and checkpoint files. For this, you can make use of Exeutil. This is a command line utility to perform different operations against database with the use of variety of switches.
You May Also Like: Ways You Can Try To Fix Microsoft Outlook Exchange Sending Error 0x8004010F
However, before you move on to soft recovery, it is very important to test the state of the log files. For this, you can make use of /ml switch of Eseutil. Also the syntax is:
Eseutil /ml “Path of the log files\log prefix
Syntax for Soft Recovery:
How to fix error when log files are missing or in dirty shutdown state
In the case of dirty shutdown state, hard recovery of database will work out. This type of recovery generally differs from the above mentioned state because this used to replay transaction log by just simply restoring transaction log by restoring database from online backup. If the recently used database and the valid database backup is available then it can restore .edb, .log and .stm files from them. After this process is done, restore.env file will be automatically created in temporary folders.
Note: Make sure that a copy of restore.env and log files are created because hard recovery process involves loss of some data.
Syntax For hard Recovery:
Once hard repair is completed, the temporary folder with restore.env file will be empty.
Repair Dirty Shutdown Error with EDB File Repair Tool:
After applying these above steps, you are unable to fix dirty shutdown error then you can also make use of EDB File Repair Tool. This tool will allow you repair and recover all your database that has been corrupted or damaged due to dirty shutdown error. The steps you have to do for fixing this issue are so easy to apply that anyone can easily apply it with an ease. So, you can easily install and download this tool in order to fix this issue with an ease.
Steps to Repair Exchange Dirty Shutdown Error:
Step 1: Click on ‘open EDB File‘ and choose the EDB file or to search the files you may click on ‘Find EDB File’.
Step 2: Select the MS Exchange Server type and click ‘Start’ button.
Step 3: Select the scanning types, ‘Quick Scan‘ or ‘Extensive Scan‘ and click ‘OK’.
Step 4: Recoverable file and folders are presented in the left panel; you may see the preview of the item by clicking.
Step 5: Now select the mailbox folders to recover and then click on the ‘Save mailboxes‘ icon. Fill the destination drive or folder in a dialog box and click ‘OK’.
Step 6: And the selected Data will be recovered.