Sean
asked on
Exachange Database Is not in a Clean Shutdown State
Hello,
I have my Exchange server crash over the weekend, I have been able to restore the server but I am not able to mount the database due to " Database not in being in clean shutdown state".
Strangely all the exchange services are started.
Please help me to mount the store.
Windows 2003 R2 standard with Exchange 2003 service pack 3.
Thanks
Sean
I have my Exchange server crash over the weekend, I have been able to restore the server but I am not able to mount the database due to " Database not in being in clean shutdown state".
Strangely all the exchange services are started.
Please help me to mount the store.
Windows 2003 R2 standard with Exchange 2003 service pack 3.
Thanks
Sean
ASKER
Agriesser,
I just used that utill but just to view the state of the database which is in "Dirty Shutdown".
Not sure what is the switch that I need to run with " eseutil? There re many options.
What should I be looking for?
Thanks
S
I just used that utill but just to view the state of the database which is in "Dirty Shutdown".
Not sure what is the switch that I need to run with " eseutil? There re many options.
What should I be looking for?
Thanks
S
Well,
the eseutil /v output should contain a line called "Log Required" which tells you, what logs are required to bring the database back in a consistent state.
F.ex. if the "Log Required" line is "39-42", it means that you need the logs with number 39 to 42 to replay the database. The stupid thing here is, that the output of eseutil is decimal but the logfile names are hexadecimal, so you have to convert them to the correct EDBxxxxx.LOG files. Do you still have the logfiles?
If you're unsure about the crash or if the database is still physically intact, run a checksum test first:
eseutil /k c:\path\to\your\database.e db
Then, if that completed without errors, run a soft recovery:
eseutil /R c:\path\to\your\database.e db
This will replay all the missing logs and bring your database back in a consistent state - check the result with `eseutil /V` again and if it's in "clean shutdown" then, you should be able to `mount-database` it.
If not, you will have to try a hard recovery with `eseutil /P` but do that only as a last resort and if you have a backup of the edb file.
the eseutil /v output should contain a line called "Log Required" which tells you, what logs are required to bring the database back in a consistent state.
F.ex. if the "Log Required" line is "39-42", it means that you need the logs with number 39 to 42 to replay the database. The stupid thing here is, that the output of eseutil is decimal but the logfile names are hexadecimal, so you have to convert them to the correct EDBxxxxx.LOG files. Do you still have the logfiles?
If you're unsure about the crash or if the database is still physically intact, run a checksum test first:
eseutil /k c:\path\to\your\database.e
Then, if that completed without errors, run a soft recovery:
eseutil /R c:\path\to\your\database.e
This will replay all the missing logs and bring your database back in a consistent state - check the result with `eseutil /V` again and if it's in "clean shutdown" then, you should be able to `mount-database` it.
If not, you will have to try a hard recovery with `eseutil /P` but do that only as a last resort and if you have a backup of the edb file.
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Do eseutil /mh on your database and look at the "Log Required" values
If you have log files that start with E00, then you can check all the logs by running "eseutil /ml e00"
If you have log files that start with E00, then you can check all the logs by running "eseutil /ml e00"
SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER
Thank you.
Since Microsoft changed the parameters of eseutil a while back, I'm not sure what version is installed on your system, so please open a command prompt and type:
eseutil /?
This will give you a list of possible options which you can then run against your edb like that:
eseutil /v c:\path\to\your\database.e