We had an issue where a recent Windows update broke the Exchange Server, luckily booting into safe mode and removing it resolved the issue, however although the databases mounted okay, there was one that did not.
We attempted the typical ESEUTIL steps because it was reporting “dirty shutdown”, and got the database back to a “Clean Shutdown” state however it still would not mount giving errors as below:
> mount-database inactive-mailboxes-1601a
Failed to mount database "inactive-mailboxes-1601a". Error: An Active Manager operation failed. Error: The database action failed. Error: Operation failed with message:
MapiExceptionDatabaseError: Unable to mount database. (hr=0x80004005, ec=1108)
Diagnostic context:
Lid: 65256
Lid: 10722 StoreEc: 0x454
Lid: 1494 ---- Remote Context Beg ----
Lid: 1238 Remote Context Overflow
Lid: 41344 Guid: 42824bf0-2578-4f35-bc93-0d8e8f1bf5e7
Lid: 35200 dwParam: 0x62F8
Lid: 59596 dwParam: 0x9D44CD Msg: JI20
Lid: 43212 dwParam: 0x9D44CD Msg: JT05
Lid: 43212 dwParam: 0x9D44CD Msg: JT08
Lid: 59596 dwParam: 0x9D44CD Msg: WM19
Lid: 59596 dwParam: 0x9D44CD Msg: WM20
Lid: 59596 dwParam: 0x9D44CD Msg: WM21
Lid: 54472 StoreEc: 0x980
Lid: 42184 StoreEc: 0x454
Lid: 10786 dwParam: 0x0 Msg: 15.01.2507.039:exchange01a:42824bf0-2578-4f35-bc93-0d8e8f1bf5e7
Lid: 51578 Guid: 42824bf0-2578-4f35-bc93-0d8e8f1bf5e7
Lid: 1750 ---- Remote Context End ----
Lid: 1047 StoreEc: 0x454 [Database: Inactive-Mailboxes-1601a, Server: exchange01b.domain.com]
+ CategoryInfo : InvalidOperation: (Inactive-Mailboxes-1601a:ADObjectId) [Mount-Database], InvalidOperationException
+ FullyQualifiedErrorId : [Server=exchange01a,RequestId=74b6ae14-4a3d-4238-841b-25670994f38d,TimeStamp=04/11/2024 11:23:31] [FailureCategory=Cmdlet-InvalidOperationExcepti
on] F5FB5936,Microsoft.Exchange.Management.SystemConfigurationTasks.MountDatabase
+ PSComputerName : exchange01a.domain.com
The ESEUTIL output showed that nothing was wrong:
[PS] Y:\Inactive-Mailboxes-1601a>eseutil /mh .\Inactive-Mailboxes-1601a.edb
Extensible Storage Engine Utilities for Microsoft(R) Exchange Server
Version 15.01
Copyright (C) Microsoft Corporation. All Rights Reserved.
Initiating FILE DUMP mode...
Database: .\Inactive-Mailboxes-1601a.edb
DATABASE HEADER:
Checksum Information:
Expected Checksum: 0x6023550c
Actual Checksum: 0x6023550c
Fields:
File Type: Database
Checksum: 0x6023550c
Format ulMagic: 0x89abcdef
Engine ulMagic: 0x89abcdef
Format ulVersion: 0x620,60,120 (attached by 9040)
Engine ulVersion: 0x620,60,120 (efvCurrent = 9040)
Created ulVersion: 0x620,20
DB Signature: Create time:10/30/2024 09:34:13.587 Rand:2467144222 Computer:
cbDbPage: 32768
dbtime: 525704228 (0x1f559c24)
State: Clean Shutdown
Log Required: 0-0 (0x0-0x0)
Log Committed: 0-0 (0x0-0x0)
Log Recovering: 0 (0x0)
Log Consistent: 0 (0x0)
GenMax Creation: 00/00/1900 00:00:00.000 LOC
Shadowed: Yes
Last Objid: 103990
Scrub Dbtime: 0 (0x0)
Scrub Date: 00/00/1900 00:00:00.000 LOC
Repair Count: 2
Repair Date: 10/30/2024 09:34:13.587 UTC
Old Repair Count: 0
Last Consistent: (0x0,0,0) 11/04/2024 10:48:07.595 UTC
Last Attach: (0x0,0,0) 11/04/2024 10:28:30.904 UTC
Last Detach: (0x0,0,0) 11/04/2024 10:48:07.595 UTC
Last ReAttach: (0xDF051,2,268) 10/25/2024 09:23:00.173 UTC
Dbid: 1
Log Signature: Create time:00/00/1900 00:00:00.000 Rand:0 Computer:
OS Version: (6.2.9200 SP 0 NLS 6020e.6020e)
Previous Full Backup:
Log Gen: 0-0 (0x0-0x0)
Mark: (0x0,0,0)
Mark: 00/00/1900 00:00:00.000 LOC
Previous Incremental Backup:
Log Gen: 0-0 (0x0-0x0)
Mark: (0x0,0,0)
Mark: 00/00/1900 00:00:00.000 LOC
Previous Copy Backup:
Log Gen: 0-0 (0x0-0x0)
Mark: (0x0,0,0)
Mark: 00/00/1900 00:00:00.000 LOC
Previous Differential Backup:
Log Gen: 0-0 (0x0-0x0)
Mark: (0x0,0,0)
Mark: 00/00/1900 00:00:00.000 LOC
Current Full Backup:
Log Gen: 0-0 (0x0-0x0)
Mark: (0x0,0,0)
Mark: 00/00/1900 00:00:00.000 LOC
Current Shadow copy backup:
Log Gen: 0-0 (0x0-0x0)
Mark: (0x0,0,0)
Mark: 00/00/1900 00:00:00.000 LOC
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 Database Maintenance Finish Date: 00/00/1900 00:00:00.000 LOC
Current Database Maintenance Start Date: 07/05/2023 13:32:18.984 UTC
Highest Continuous Database Maintenance Page: 0
Highest Database Maintenance Page: 0
Database Header Flush Signature: Create time:11/04/2024 10:48:07.595 Rand:2840687694 Computer:
Flush Map Header Flush Signature: Create time:11/04/2024 10:48:07.595 Rand:1590799241 Computer:
Operation completed successfully in 0.93 seconds.
Resolution
To resolve the issue in this case we renamed the transaction log directory used by the database to add “-old” to the end, then created a new directory with the original name.
Then attempted to mount the database with:
[PS] Y:\Inactive-Mailboxes-1601a>Mount-Database inactive-mailboxes-1601a
The database then mounted successfully without the error. It appears that something within the log file chain (which should have been detached) was causing an issue, as the database was showing as clean shutdown, its essentially detached from its log chain so these log files are not supposed to be needed to mount. Making sure it can’t by moving the old files away seems to have resolved it.