Hello everyone,
I have the following problem: MapiExceptionDatabaseError: Unable to mount database. (hr=0x80004005, ec=1108)
I have already tried the following:
Steps to be taken:
eseutil / mh * .edb
eseutil / p * .edb
eseutil / mh * .edb
Then I removed all log files from the Exchange log folder, Information service was finished in time.
The database could then be integrated again, but only for about 5 minutes. After that the error was there again.
I am currently at a loss. Perhaps one of you has a tip.
System details. Server 2012 Standard, Exchange 2013 cu12
Greetings Erik Börner
Hello Erik,
You have already carried out a hard recovery of the database. Did you then delete all files from the directory (except for the EDB file, of course)? Can you post the current status of eseutil /mh?
Greetings,
Frank
Hello Frank,
I deleted all files after the hard recovery except for the folder in there! Can it stay in or can it be removed?
Extensible Storage Engine Utilities for Microsoft(R) Exchange Server
Version 15.00
Copyright (C) Microsoft Corporation. All Rights Reserved.
Initiating FILE DUMP mode...
Database: C:\Program Files\Microsoft\Exchange Server\V15\Mailbox\AllUser\alluser.edb
DATABASE HEADER:
Checksum information:
Expected checksum: 0x8394ac80
Actual Checksum: 0x8394ac80
Fields:
File Type: Database
Checksum: 0x8394ac80
Format ulMagic: 0x89abcdef
Engine ulMagic: 0x89abcdef
Format ulVersion: 0x620,20
Engine ulVersion: 0x620,20
Created ulVersion: 0x620,20
DB Signature: Create time:07/26/2019 14:08:09.642 Rand:1622008791 Computer:
cbDbPage: 32768
dbtime: 280 (0x118)
State: Dirty Shutdown
Log Required: 636516-636623 (0x9b664-0x9b6cf)
Log Committed: 0-636624 (0x0-0x9b6d0)
Log recovering: 0 (0x0)
GenMax Creation: 10/23/2019 19:59:41.753
Shadowed: Yes
Last Objid: 5
Scrub Dbtime: 0 (0x0)
Scrub Date: 00/00/1900 00:00:00
Repair Count: 0
Repair Date: 00/00/1900 00:00:00.000
Old Repair Count: 0
Last Consistent: (0x0,0,0) 00/00/1900 00:00:00.000
Last Attach: (0x1,1,268) 07/26/2019 14:08:09.658
Last Detach: (0x0,0,0) 00/00/1900 00:00:00.000
Last ReAttach: (0x960B2,2,268) 08/24/2019 17:45:07.628
Dbid: 1
Log Signature: Create time:07/26/2019 14:08:09.549 Rand:4140400809 Computer:
OS Version: (6.2.9200 SP 0 NLS ffffffffff.ffffffff)
Previous Full Backup:
Log Gen: 636484-636594 (0x9b644-0x9b6b2) - OSSnapshot
Mark: (0x9B6B3,1,0)
Mark: 10/23/2019 18:01:17.197
Previous Incremental Backup:
Log Gen: 0-0 (0x0-0x0)
Mark: (0x0,0,0)
Mark: 00/00/1900 00:00:00.000
Previous Copy Backup:
Log Gen: 615819-615922 (0x9658b-0x965f2) - OSSnapshot
Mark: (0x965F3,1,0)
Mark: 08/28/2019 22:00:34.135
Previous Differential Backup:
Log Gen: 0-0 (0x0-0x0)
Mark: (0x0,0,0)
Mark: 00/00/1900 00:00:00.000
Current Full Backup:
Log Gen: 0-0 (0x0-0x0)
Mark: (0x0,0,0)
Mark: 00/00/1900 00:00:00.000
Current Shadow copy backup:
Log Gen: 0-0 (0x0-0x0)
Mark: (0x0,0,0)
Mark: 00/00/1900 00:00:00.000
cpgUpgrade55Format: 0
cpgUpgradeFreePages: 0
cpgUpgradeSpaceMapPages: 0
ECC Fix Success Count: none
Old ECC Fix Success Count: none
ECC Fix Error Count: none
Old ECC Fix Error Count: none
Bad Checksum Error Count: none
Old bad Checksum Error Count: none
Last checksum finish date: 00/00/1900 00:00:00.000
Current checksum start Date: 00/00/1900 00:00:00.000
Current checksum page: 0
Operation completed successfully in 0.93 seconds.
I hope you can help me somehow, the part has been standing still since Friday and I currently have no more ideas.
I retrieved the database from the backup today. Same error, however, can be integrated briefly and then returns to error.
However, eseutil /p Rebuldiung now reads
Extensible Storage Engine Utilities for Microsoft(R) Exchange Server
Version 15.00
Copyright (C) Microsoft Corporation. All Rights Reserved.
Initiating REPAIR mode...
Database: C:\Program Files\Microsoft\Exchange Server\V15\Mailbox\AllUser\alluser.edb
Temp. database: TEMPREPAIR11100.EDB
Checking database integrity.
The database is not up-to-date. This operation may find that
this database is corrupt because data from the log files has
yet to be placed in the database.
To ensure the database is up-to-date please use the 'Recovery' operation.
Scanning status (% complete)
0 10 20 30 40 50 60 70 80 90 100
|----|----|----|----|----|----|----|----|----|----|
Rebuilding MSysObjectsShadow from MSysObjects.
Scanning status (% complete)
0 10 20 30 40 50 60 70 80 90 100
|----|----|----|----|----|----|----|----|----|----|
...................................................
Checking the database.
Do you think I should let it run???
Hi Erik
it's still there...
State: Dirty Shutdown
As long as there is no clean shutdown, you will still not be able to integrate them.
Greetings,
Monthy
Addendum: If you (hard) repair, always make sure that you need at least the space of the actual DB on your medium again, as it creates a complete temp. EDB.
Addendum 2: You can also first create a new DB with empty mailboxes. This way, new mails can go in and out. Then you have a little less trouble and can mount the old DB as a recovery DB. If that works, you can merge between the mailboxes. Or you can get 3rd party tools that can easily look into the broken DB and pull PST files from it, which you import back into the users' mailboxes.
Hi Monthy,
There is enough free memory, don't worry, I also have 6 years of Exchange experience, so I'm not a newcomer.
I already had the database in Clean Shutdown, then started the Information Store service, which automatically integrates it.
5 minutes later it's back in Dirty and the same error.
Greetings Erik
Hi Erik,
The database seems to have taken quite a beating. In your case, I would first carry out a dial tone recovery so that the users can work again. The old data can then be restored using a recovery database. I described the procedure for Exchange 2010 here:
https://www.frankysweb.de/exchange-2010-dial-tone-recovery/
However, the procedure itself is the same for Exchange 2013.
Greetings,
Frank
Hi Erik,
If in doubt, restore the last backup before the problems started, if there is no other way. If you are not using Dialtone, another solution would be to get the last working version up and running and then move all users directly to a new DB. However, any mails that have passed through the system in the meantime would then be invalid. In your case, that would be a few days = stupid. Dialtone is therefore actually a very useful approach.
Greetings,
Monthy
Hello you two,
Thanks for the help, current status: Yesterday I restored the database from last week (before the error). Deleted the logs and tried to integrate them.
This worked for the time being, but I can't get access with Outlook or OWA except for the admin account, where I could also send mails, when I reply to them the mail comes back but I also get an undeliverable error message:
Your message could not be delivered because the recipient's mailbox is in quarantine. Quarantined. Please contact Helpdesk if the problem persists.
Do you have any idea why this is happening? I have already moved the admin mailbox to a new database!
Greetings Erik
Update:
The database itself is running again. Only one mailbox doesn't want to (mine) it keeps going into quarantine.
When I Disable-MailboxQuarantine it is out for 10 seconds and then quarantined again.
An employee can send mails via iPad but not receive them, also very strange. These are the last bugs I have to fix.
If you have another tip let me know. Thank you
Greetings Erik
Hello Erik,
you should always create a new database after the restore and move the mailboxes to the new database. I think this will solve the problems. Restored databases as well as databases that have been touched with eseutil are not supported by MS.
Greetings,
Frank
Hi Frank,
yes ok I will do this but I cannot move the mailbox which is in quarantine to a new database?
What is the best way to proceed? It can only be taken out for a short time, which is not enough to migrate.
Greetings Erik
Hi Erik,
I would first make sure that the number of mailboxes is removed from the database. I would first create a new mailbox for the one mailbox so that at least Mail works again. The data can come from the data backup. However, I would no longer trust the apparently quite defective database.
Greetings,
Frank
Hi Frank,
I was able to migrate all mailboxes to a new database. What should I do now with the one mailbox?
Greetings Erik
I was able to migrate all mailboxes to a new database. What should I do now with the one mailbox?
I would export the mailbox via new-mailboxexportrequest, additionally the complete properties (including LegExDN), then perform disable-mailbox for this mailbox. The last step would be to enable-mailbox again on the new DB and add the LegExDN as X500 address.
Greetings,
Monthy