Applies to: Exchange Server 2010 SP3, Exchange Server 2010 SP2

Topic Last Modified: 2012-07-23

Mailbox restore requests are used to restore disconnected mailboxes. A disconnected mailbox is a mailbox object in the Exchange store that isn't associated with an Active Directory user account. Disconnected mailboxes remain in the Exchange database for the duration specified in the deleted mailbox retention settings for the mailbox database. By default, disconnected mailboxes are retained for 30 days. During this retention period, a mailbox can be recovered by connecting it to a new or existing Active Directory user account.

You can view the properties of a mailbox restore request, or you can view the statistics. The properties provide you with basic information about the status of a mailbox restore request. The statistics provide you with detailed information that can be used for troubleshooting purposes.

The search criteria for the Get-MailboxRestoreRequest and Get-MailboxRestoreRequestStatistics cmdlets is a Boolean And statement. If you use multiple parameters, you can narrow your search and reduce your search results.

Looking for other management tasks related to disconnected mailboxes? Check out Managing Disconnected Mailboxes.

Use the Shell to view mailbox restore request properties

You need to be assigned permissions before you can perform this procedure. To see what permissions you need, see the "Disconnected mailboxes" entry in the Mailbox Permissions topic.

Note:
You can't use the EMC to view mailbox restore request properties.

This example returns the status of the restore request Ayla\MailboxRestore using the Identity parameter.

Copy Code
Get-MailboxRestoreRequest -Identity "Ayla\MailboxRestore"

This example returns additional information about the status of the second restore request for the target mailbox with the display name Kweku by pipelining the command to the Format-List cmdlet.

Copy Code
Get-MailboxRestoreRequest -Identity "Kweku\MailboxRestore1" | Format-List

This example returns the status of restore requests being restored from the source database MBD01.

Copy Code
Get-MailboxRestoreRequest -SourceDatabase MBD01

This example returns all restore requests named RestoreToMBD01 that have been suspended.

Copy Code
Get-MailboxRestoreRequest -Name "RestoreToMBD01" -Suspend $true

For detailed syntax and parameter information, see Get-MailboxRestoreRequest.

Get-MailboxRestoreRequest Output

Be default, the Get-MailboxRestoreRequest cmdlet returns the name of the request, the target mailbox to which data is being restored, and the status of the request. The following table lists the information returned if you pipeline the cmdlet to the Format-List cmdlet.

Value Description

SourceDatabase

Specifies the database that contains the disconnected mailbox being restored.

TargetDatabase

Specifies the database that contains the mailbox or archive to which the mailbox is being restored.

TargetMailbox

Specifies the mailbox into which data is being restored.

Name

Specifies the name of the request.

RequestGuid

Specifies the GUID of the request.

RequestQueue

Specifies the database on which the Microsoft Exchange Mailbox Replication service (MRS) stores the detailed status of the request.

Flags

Specifies flags that the cmdlet automatically sets when creating the request.

BatchName

Specifies a batch name. If you didn't provide a batch name, this field is blank.

Status

Specifies the status of the request.

Suspend

Specifies whether the request was created to be automatically suspended before completion.

Direction

Specifies whether the request is a push or a pull. For mailbox restore requests, this value is always Pull.

RequestStyle

Specifies whether the request is IntraOrg or CrossOrg. For Microsoft Exchange Server 2010 Service Pack 1 (SP1), this value is always IntraOrg.

OrganizationID

If the request is performed in a multi-tenant organization, this value specifies the identity of the organization on which the request is performed.

Identity

Specifies the identity of the request. This identity is a combination of the target mailbox name and the request name.

IsValid

Specifies whether the mailbox restore request is valid.

Use the Shell to view mailbox restore request statistics

You need to be assigned permissions before you can perform this procedure. To see what permissions you need, see the "Disconnected mailboxes" entry in the Mailbox Permissions topic.

Note:
You can't use the EMC to view mailbox restore request statistics.

This example returns the default statistics for the restore request Tony\MailboxRestore1. By default, the information returned includes name, mailbox, status, and percentage complete.

Copy Code
Get-MailboxRestoreRequestStatistics -Identity Tony\MailboxRestore1

This example returns the statistics for Tony Smith's mailbox and exports the report to a .csv file.

Copy Code
Get-MailboxRestoreRequestStatistics -Identity Tony\MailboxRestore | Export-CSV \\SERVER01\RestoreRequest_Reports\Tony_Restorestats.csv

This example returns additional information about the restore request for Tony Smith's mailbox using the IncludeReport parameter and pipelining the results to the Format-List cmdlet.

Copy Code
Get-MailboxRestoreRequestStatistics -Identity Tony\MailboxRestore -IncludeReport | Format-List 

This example returns default statistics for a restore request being processed by the instance of MRS running on the Client Access server CAS01. This command returns only information for restore requests currently being processed by an instance of MRS. If the Client Access server is finished processing all restore requests, no information is returned. This command is for debugging purposes and should only be performed if requested by support personnel.

Copy Code
Get-MailboxRestoreRequestStatistics -MRSInstance CAS01.contoso.com 

This example returns additional information for all restore requests that have a status of Failed using the IncludeReport parameter, and then saves the information to the file AllRestoreReports.txt in the location where the command is being run.

Copy Code
Get-MailboxRestoreRequest -Status Failed | Get-MailboxRestoreRequestStatistics -IncludeReport | Format-List > AllRestoreReports.txt

For detailed syntax and parameter information, see Get-MailboxRestoreRequestStatistics and Get-MailboxRestoreRequest.

Get-MailboxRestoreRequestStatistics Output

By default, the Get-MailboxRestoreRequestStatistics cmdlet returns the name of the request, the status of the request, the alias of the target mailbox, and the percentage completed. The following table lists the information returned if you pipeline the cmdlet to the Format-List cmdlet.

Value Description

Name

Specifies the name of the request.

Status

Specifies the status of the request.

StatusDetail

Specifies more details about the request status. For example, if the Status value returns InProgress, the StatusDetail value would return the specific stages for the InProgress status, such as CreatingFolderHierarchy and CopyingMessages.

SyncStage

Specifies how far along the request is through the restore process.

Flags

Specifies flags that the cmdlet automatically sets when creating the mailbox restore request.

RequestStyle

Specifies whether the request is IntraOrg or CrossOrg. For Exchange 2010 SP1, this value is always IntraOrg.

Direction

Specifies whether the request is a push or a pull. For mailbox restore requests, this value is always Pull.

Protect

Reserved for Microsoft internal use only.

Suspend

Specifies whether the restore request is suspended. This value is true in the following scenarios:

  • MRS stopped or is in the process of stopping the request due to a failure.

  • An administrator suspended the request.

SourceExchangeGuid

Specifies the GUID of the source mailbox from which data is being restored.

SourceRootFolder

Specifies the name of the root folder in the source mailbox's hierarchy from which data is being restored. If this value is blank, data is restored from the folder Top of Information Store.

SourceVersion

Specifies the version of Exchange running on the database in which the source mailbox is located.

SourceDatabase

Specifies the name of the database on which the source mailbox is located.

MailboxRestoreFlags

Specifies that the mailbox being restored is either Disabled or Soft-Deleted.

TargetAlias

Specifies the alias of the target mailbox.

TargetIsArchive

Specifies whether the mailbox is being restored into an archive.

TargetExchangeGuid

Specifies the GUID of the target mailbox or archive.

TargetRootFolder

Specifies the name of the root folder in the mailbox's or archive's hierarchy to which data is being restored. If this value is blank, data is restored to the folder Top of Information Store.

TargetVersion

Specifies the version of Exchange running on the Mailbox server on which the target database is mounted.

TargetDatabase

Specifies the name of the database on which the target mailbox is located.

TargetMailboxIdentity

Specifies the identity of the target mailbox.

IncludeFolders

Specifies the list of folders to include during the restore. If this value is blank, no folders were specified when the request was created, and all folders will be restored to the mailbox or archive (unless the ExcludeFolders parameter is used to exclude specific folders).

ExcludeFolders

Specifies the list of folders to exclude during the restore. If this value is blank, no folders were specified when the request was created, and all folders will be restored to the mailbox or archive (unless the IncludeFolders parameter is used to include specific folders).

ExcludeDumpster

Specifies whether the Recoverable Items folder was excluded when the request was created.

ConflictResolutionOption

Specifies the action for MRS to take if there are matching messages in the target and source folders.

AssociatedMessagesCopyOption

Specifies whether the associated messages are copied when the request is processed. Associated messages are special messages that contain hidden data with information about rules, views, and forms.

BatchName

Specifies a batch name. If you don't provide a batch name, this field is blank.

BadItemLimit

Specifies the number of bad items that MRS will skip if the request encounters corrupted messages.

BadItemsEncountered

Specifies the number of corrupted messages encountered by the command. If the BadItemsEncountered value is greater than the BadItemLimit value, the request fails.

QueuedTimeStamp

Specifies the date and time at which the request was initiated to MRS.

StartTimeStamp

Specifies the date and time at which the restore request started being processed by MRS.

LastUpdateTimeStamp

Specifies the date and time at which the last change was made to the request. The change may have been made by an administrator or by MRS.

SuspendTimeStamp

Specifies the date and time at which the request was suspended.

OverallDuration

Specifies the amount of time it took to complete the request. If the request is in a Failed state, this value specifies the amount of time between the request being initiated and the request failing. If the request isn't complete, this value specifies the amount of time between the request being initiated and the Get-MailboxRestoreRequestStatistics cmdlet being run.

TotalSuspendedDuration

Specifies the amount of time the request was in the Suspended state.

TotalFailedDuration

Specifies the amount of time the request was in the Failed state.

TotalQueuedDuration

Specifies the amount of time the request was in the Queued state.

TotalInProgressDuration

Specifies the amount of time the request was in the In Progress state.

TotalStalledDueToHADuration

Specifies the amount of time the request was stalled due to high availability.

MRSServerName

Specifies the name of the Client Access server that processed the request.

EstimatedTransferSize

Specifies the file size that was restored or the file size that MRS expects to restore if the request is in the In Progress state.

EstimatedTransferItemCount

Specifies the number of items that were restored or the number of items that MRS expects to restore if the request is in the In Progress state.

BytesTransferred

Specifies the total number of bytes that have been transferred.

BytesTransferredPerMinute

Specifies the average number of bytes that have been transferred per minute.

ItemsTransferred

Specifies the number of items that have been transferred.

PercentComplete

Specifies the percentage of the request that has been completed.

PositionInQueue

If the request hasn't started, this value specifies the request's position in the queue.

FailureCode

If there is a failure, this value specifies the failure code.

FailureType

If there is a failure, this value specifies the failure type.

FailureSide

If there is a failure, this value specifies whether the failure occurred on the target mailbox or the source mailbox.

Message

If there is a failure, this value specifies the failure message. This value can also specify the suspend comment.

FailureTimestamp

If the request failed, this value specifies the date and time at which the request failed.

FailureContext

If the request failed, this value specifies information about the action being performed at the time of failure.

IsValid

Specifies whether the request was valid.

ValidationMessage

If the request isn't valid, this value specifies the reason.

OrganizationID

If the request is performed in a multi-tenant organization, this value specifies the identity of the organization in which the request is performed.

RequestGuid

Specifies the GUID of the request.

RequestQueue

Specifies the database on which MRS stores the detailed status of the request.

Identity

Specifies the identity of the request.

Report

If you used the IncludeReport parameter, this value specifies information that can be used to troubleshoot the request.