After a power outage took down multiple servers, our Exchange 2007 environment came back online — except for the public folder database. The store wouldn't mount, and mailbox users who relied on shared calendars and contacts were dead in the water.
The recovery process:
- Ran
ESEUTIL /Pfor a hard repair on the public folder database — this fixes page-level corruption but can cause data loss - Followed with
ESEUTIL /Dto defragment and reclaim space - Ran
ISINTEG -FIXto repair logical corruption at the Information Store level - Mounted the repaired database and verified folder hierarchy
Lessons learned:
- UPS is not optional. Every server that hosts data should be on battery backup with graceful shutdown configured
- Circular logging is dangerous — without transaction logs, you can't do point-in-time recovery
- Test your backups. We had backups, but discovering the public store was corrupt before needing it would have been better
Modern context: Exchange Online has largely eliminated this class of problem — Microsoft handles database maintenance and redundancy. But for on-prem Exchange, DAGs (Database Availability Groups) with multiple copies are the minimum standard.