Forum Discussion

BHSKenHen's avatar
BHSKenHen
Brass Contributor
Apr 03, 2019
Solved

Need to Restore Deleted Mailbox with a twist

Scenario:

  • Exchange 2013
  • User Mailbox was Disabled via EAC
  • AD User object was not disabled or deleted
  • Mailbox shouldn't have been disabled, so they scrambled to fix the situation
  • Instead of Re-connecting old mailbox to the user, a New Mailbox was created for that user
  • The AD User attribute "legacyExchangeDN" appeared to have a different GUID than the current/new mailbox GUID
  • Don't seem to be able to reference the originally deleted mailbox
  • No longer appears in available Soft-Deleted mailboxes
    • The mailbox in question does not appear when I run the following cmdlet
    • Get-MailboxDatabase | Get-MailboxStatistics -Filter 'DisconnectDate -ne $null'
  • Looped through all of our Mailbox DBs, trying to perform a Get-MailboxStatistics -StoreMailboxIdentity GUID, using the former mailbox GUID

Suggested course of action here?

 

Our Commvault system isn't backing up down the mailbox level, just the database. Could I create a new Mailbox Database and restore last night's backup to that database? Then create a move-request from the restore database to the prod DAG?

 

Worst-case scenario, I'll request an Archive Recovery from Mimecast...

  • Solved the issue; turns out, certain cmdlets, such as Get-MailboxDatabase | Get-MailboxStatistics can only be ran from an Exchange Server in the Shell. I perform nearly every Exchange mgmt task from my own machine via Remote Session. ($ExchSession = New-PSSession.... Import-PSSession $ExchSession...). When I run that command in Remote Session, I receive an error: The specified mailbox "DB15" doesn't exist. [Get-MailboxStatistics], ManagementObjectNotFoundException.

     

    I mostly followed the "https://docs.microsoft.com/en-us/exchange/connect-or-restore-a-deleted-mailbox-exchange-2013-help#use-the-shell-to-restore-a-deleted-mailbox" doc.

    1. From one of our Exchange Servers, I was successfully able to run this cmdlet:
      Get-MailboxDatabase | Get-MailboxStatistics | Where { $_.DisplayName -eq "END USER" }
    2. This returned TWO entries, which is exactly what I expected to see
    3. I piped that into a Select DisplayName,MailboxGuid,Database,ServerName in order to obtain the original mailbox's source DB info:
      Get-MailboxDatabase | Get-MailboxStatistics | Where { $_.DisplayName -eq "END USER" } | Select DisplayName,MailboxGuid,Database,ServerName
    4. This enabled me to successfully run a New-MailboxRestoreRequest:
      New-MailboxRestoreRequest -SourceStoreMailbox "GUID of deleted mailbox" -SourceDatabase MBXDB01 -TargetMailbox "END USER MB" -AllowLegacyDNMismatch
    5. Used this command to check the stats of the restore:
      Get-MailboxRestoreRequest | Get-MailboxRestoreRequestStatistics

2 Replies

  • BHSKenHen's avatar
    BHSKenHen
    Brass Contributor
    Was just reading about the Exchange 2016 Recovery Database feature. Doesn't help me because we're still on 2013. :)
    • BHSKenHen's avatar
      BHSKenHen
      Brass Contributor

      Solved the issue; turns out, certain cmdlets, such as Get-MailboxDatabase | Get-MailboxStatistics can only be ran from an Exchange Server in the Shell. I perform nearly every Exchange mgmt task from my own machine via Remote Session. ($ExchSession = New-PSSession.... Import-PSSession $ExchSession...). When I run that command in Remote Session, I receive an error: The specified mailbox "DB15" doesn't exist. [Get-MailboxStatistics], ManagementObjectNotFoundException.

       

      I mostly followed the "https://docs.microsoft.com/en-us/exchange/connect-or-restore-a-deleted-mailbox-exchange-2013-help#use-the-shell-to-restore-a-deleted-mailbox" doc.

      1. From one of our Exchange Servers, I was successfully able to run this cmdlet:
        Get-MailboxDatabase | Get-MailboxStatistics | Where { $_.DisplayName -eq "END USER" }
      2. This returned TWO entries, which is exactly what I expected to see
      3. I piped that into a Select DisplayName,MailboxGuid,Database,ServerName in order to obtain the original mailbox's source DB info:
        Get-MailboxDatabase | Get-MailboxStatistics | Where { $_.DisplayName -eq "END USER" } | Select DisplayName,MailboxGuid,Database,ServerName
      4. This enabled me to successfully run a New-MailboxRestoreRequest:
        New-MailboxRestoreRequest -SourceStoreMailbox "GUID of deleted mailbox" -SourceDatabase MBXDB01 -TargetMailbox "END USER MB" -AllowLegacyDNMismatch
      5. Used this command to check the stats of the restore:
        Get-MailboxRestoreRequest | Get-MailboxRestoreRequestStatistics

Resources