So i have this customer who recently upgraded their Exchange server from 2007 to 2010.

Another pair of techs performed the migration and they left behind the old original database. Well the General Manager onsite wants to recover some emails from back a couple years but they are most likely in the old database.

So i tried recovering the database from 2010 by mounting it as recovery using:

New-MailboxDatabase -Recovery -Name <RDBName> -Server <ServerName> -EdbFilePath <RDBPathandFileName> -LogFolderPath <LogFilePath>

The EDB does add to exchange but it is unable to mount due to what we think is either disk space on the server (Which is a VM already maxing at 2TB, so expansion is not possible on a MBR table) or the database is corrupt somehow.

I did use ESEUTILS to make sure it was at a clean shutdown and tried mounting it again with a new copy but i still got the same error.

So the onsite IT guy made a VM on his PC and installed Exchange 2007 trial for use to try and recover the mailboxes in their original environment.

I have followed instructions on recovering from a Recovery Storage Group but I have not been quite successful with getting mailboxes restored, at least from the GUI.

Just now i tried using the CLI instead and ran:


and this did not output anything. So from the Management Console i made sure that the Recovery Database was mounted then tried to specify what Storage Group to display using Get-StorageGroup -Identity RecoveryStorageGroup | Get-Mailbox, Get-Mailbox -StorageGroup RecoveryStorageGroup but i get 0 output.

I did some research on the database, somehow, maybe being empty? I'm assuming that even if its a recovery database, i should still be able to list the mailboxes that it contains, right?

I'm not sure what else i can try and i don't think we want to go get some Third Party software just to recover a hand-full of emails. Any other suggestions would be appreciated!

3 Answers 3


Have you run ESUTIL on the database to compress? I recently migrated a client from 2007 to 2010. And the method I've always used is to go to the 2010 box and initiate a "New local Move..." on the individual mailbox. What I'm saying e is that you are doing a "Move" not a "copy". You have to, because you don't want the user's mail to be in two locations at the same time. So if you move the mail from one database to another, and you move all mailboxes then the 2007 database is emptied out. It is essentially Gigabytes of empty space. I think that is why you keep coming up with 0 when you do a "Get-Mailbox". If you make a copy of the database and run ESUTIL on it to compress I think you'll find it compresses way down to almost nothing. You may have a huge, empty, file on your hands.

  • Hmm yeah that's actually what I was thinking too but I wanted to post in case I'm wrong. I'll try that, thanks
    – xR34P3Rx
    Commented Jul 4, 2018 at 3:11
  • I went back to the old 2007 box, made a copy and ran ESEUTIL /D on it. It went from 54Gb down to 88Mb in just a few seconds.
    – Larryc
    Commented Jul 4, 2018 at 3:40

If you have migrated all mailboxes to the new server, then those messages that are required will be on the new server. If they are not, then you will need to find an old backup and restore that so you can recover the content. As you have discovered the old databases that were migrated from a useless to you.


As suggested by Sembee, you can restore your mailboxes data from backup. For third party software, I would suggest veeam, ontrack, stellar exchange recovery & many more.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .