How to enable and use single item recovery in Exchange 2010 ---------------------------------------------------------------- 1. Microsoft Exchange Server MAPI Editor (MFCMAPI) download: http://mfcmapi.codeplex.com ----------------------------------------------------------------------------------------------- 2. Check "SingleItemRecovery" value for a single user: Get-Mailbox BAndersen | FT Name,SingleItemrecoveryEnabled ----------------------------------------------------------------------------------------------- 3. Set "SingleItemRecovery" value for a single user: Set-Mailbox BAndersen -SingleItemRecoveryEnabled $true ----------------------------------------------------------------------------------------------- 4. Get the list of mailboxes with Single Item Recovery enabled/not enabled: 4.1 Get the list of mailboxes with Single Item recovery enabled Get-Mailbox | where {$_.SingleItemrecoveryEnabled} | FT Name,SingleItemrecoveryEnabled 4.2 Get the list of mailboxes with Single Item recovery not enabled Get-Mailbox | where {!$_.SingleItemrecoveryEnabled} | FT Name,SingleItemrecoveryEnabled ----------------------------------------------------------------------------------------------- 5. Set the session scope of the shell commands: 5.1 Set the session scope to a specific Active Directory domain: # In the example bellow we specify the Active Directory domain "colo.netometer.local" Set-ADServerSettings -RecipientViewRoot "colo.netometer.local" 5.2 Set the session scope to an Organizational Unit in a specific domain: # In the example bellow we specify the OU "Pasadena Research" in the domain "netometer.local" Set-ADServerSettings -RecipientViewRoot "netometer.local/Pasadena Research" 5.3 Set the session scope to the whole forest: Set-AdServerSettings -ViewEntireForest $true ----------------------------------------------------------------------------------------------- 6. Enable Single Item Recovery for the mailboxes in the current session scope: #First we store the list in a variable $mbx #then we set the value of "SingleItemRecoverEnabled" for each mailbox: $mbx = Get-Mailbox | where {!$_.SingleItemrecoveryEnabled} $mbx | foreach {Set-Mailbox -Identity $_.Identity -SingleItemRecoveryEnabled $true} ----------------------------------------------------------------------------------------------- 7. Disable Single Item Recovery for the mailboxes in the current session scope: $mbx = Get-Mailbox | where {$_.SingleItemrecoveryEnabled} $mbx | foreach {Set-Mailbox -Identity $_.Identity -SingleItemRecoveryEnabled $false} ----------------------------------------------------------------------------------------------- 8. Perform Mailbox Search from Exchange Management Shell: Search-Mailbox "BAndersen" -TargetMailbox "RecoveryUser" -TargetFolder "Recovered_From_Shell" -LogLevel Full -SearchDumpsterOnly:$true -SearchQuery "Important Detail" ------------------------------------------------------- 9. Set Retention period to 90 days Set-Mailbox BAndersen -RetainDeletedItemsFor 90 -UseDatabaseRetentionDefaults $false ------------------- $mbx = Get-Mailbox $mbx | foreach {Set-Mailbox -Identity $_.Identity -RetainDeletedItemsFor 365 -UseDatabaseRetentionDefaults $false} ------------------- Get-Mailbox BAndersen | FT Name,RetainDeletedItemsFor Get-Mailbox | FT Name,RetainDeletedItemsFor ------------------------------------------------------- 10. Set Database and Mailbox Recoverable Items Quotas Get-MailboxDatabase | FT name,RecoverableItemsWarningQuota,RecoverableItemsQuota Set-MailboxDatabase MBX1-E10 -RecoverableItemsWarningQuota 60GB -RecoverableItemsQuota 80GB Get-Mailbox BAndersen | FT name,RecoverableItemsWarningQuota,RecoverableItemsQuota,UseDatabaseQuotaDefaults Set-Mailbox BAndersen -RecoverableItemsWarningQuota 80GB -RecoverableItemsQuota 90GB -UseDatabaseQuotaDefaults $false ------------------- $mbx = Get-Mailbox $mbx | foreach {Set-Mailbox -Identity $_.Identity -RecoverableItemsWarningQuota 80GB -RecoverableItemsQuota 90GB -UseDatabaseQuotaDefaults $false} ------------------- Get-Mailbox | FT name,RecoverableItemsWarningQuota,RecoverableItemsQuota,UseDatabaseQuotaDefaults