How to Resolve Exchange ‘Operation Terminated With Error 550 Database was Not Shutdown Cleanly’ Error?

admin | September 13th, 2017 | Microsoft Exchange

What is dirty shutdown in Exchange?

Dirty Shutdown means Exchange get not closed normally. It does not indicate that the database is corrupted or damaged but it may lead to corruption in .edb and .stm files. It simply means that the database files had not been detached from log stream in a right manner.

It may happen that the Exchange database process terminates unexpectedly during any Exchange operations. The reasons may be multiple like file corruption, losing access to backend storage, or power loss.

What are the issues to prevent Exchange Database to mount?

  • Missing Exchange database files
  • Database is in dirty shutdown state
  • Loss of access to underlying storage
  • Not enough free disk space on storage

How to check if the Exchange database had a dirty shutdown?

    1. Open the command prompt and execute the command to check the state of the public folder.

    1. To check the state of the private folder, run the command.

pub1edb

    1. If database is clean shutdown, then it means it had been detached from transaction log

clean-shutdown

    1. If database got shut down badly, it shows it inconsistency and means that database is still attached to a log file.

bad-shut

What are the errors shown when database had a dirty shutdown?

  • ERROR: database was not shut down cleanly (dirty shutdown)
  • Operation terminated with error-550. Database recovery is needed first to run to start complete database properly.
  • The exchange is unable to mount the database which you specified.

Solutions to fix Exchange dirty shutdown error:

In this section, we are going to explain solutions for Error -550 JET_errDatabaseDirtyShutdown. Solutions for different scenarios are discussed below.

    • Log files are in clean state:
      It may happen that even if Exchange server log files are in a clean state but still users are facing this issue. In that case, a user can solve it by performing soft recovery i.e by using Exchange storage engine utility (ESEUTIL). This utility can be used when exchange server is in offline mode. To make sure that the log files are not damaged, check by executing following command: “ESEUTIL/ ml / “Path of the log files\log_prefix” Syntax for soft recovery: ESEUTIL/ r enn / L[path to Log files] / s[path to checkpoint file] / p[path to database file] /i

 

    • Log file is missing
      Another reason for the occurrence of dirty shutdown error is that if log files are not in the clean state. This issue can be solved only by the hard recovery process. It is easy to restore database files i.e .edb, .stm or transaction logs if there is available of valid backup of the database. Restore.env file is created at temporary folder after database restoration at ‘C:\Temp’. It is suggested that making a copy of folder contained with log files and restore.env as there may be chances to lost data during this hard recovery. To perform hard recovery, execute the below-given command: ‘Eseuti l/ cc “path of the restore.env containing folder11’

 

  • No valid backup available
    If a user has no valid backup or no log files, then execute the command given below in command prompt: eseutil/ p ‹database-name11> A message will be prompted, click OK button to start recovery.
    repair-db

After completion of recovery process, execute run\mh switch to check the database consistency. Now it must have a clean shutdown. After trying all these methods, if the error still occurs and having a dirty shutdown, the user can recover Exchange database using a third-party utility like convert EDB. It will repair corrupted EDB files and converts them to PST file format.