exchange2016恢复断开连接的邮箱、恢复禁用的邮箱

概要
断开连接的邮箱是在未与 Active Directory 用户帐户关联的 Exchange 存储中的邮箱对象。断开的邮箱仍保留在 Exchange 数据库中,保留时间在邮箱数据库的已删除邮箱保留设置中指定。认情况下,断开的邮箱将保留 30 天。在此保留期内,将邮箱连接到新的或现有的 Active Directory 用户帐户可以恢复邮箱。
有两种类型的断开连接的邮箱:

  • 删除的邮箱 将邮箱从 Microsoft Exchange Server 2010 Service Pack 1 (SP1) 数据库移动到任何其他数据库时,Exchange 不会在移动完成后从源数据库中完全删除邮箱。而是将源邮箱数据库中的邮箱切换为软删除状态。借助软删除邮箱,可以在邮箱还原操作过程中使用 MailBoxRestoreRequest cmdlet 集访问邮箱数据。软删除邮箱将保留在源数据库中,直到已删除邮箱保留期过期或直到使用 Remove-StoreMailBox cmdlet 清除邮箱。
    1. 禁用的邮箱 当使用 disable-MailBox 或 Remove-MailBox cmdlet 使邮箱断开连接或删除邮箱时,Exchange 会保留删除的邮箱,且邮箱会切换为禁用状态。借助禁用的邮箱,可以在不必还原整个邮箱数据库的情况下恢复邮箱数据。禁用的邮箱保留在邮箱数据库中,直到已删除邮箱保留期过期或直到永久删除邮箱。
      无论以哪种方式还原邮箱,前提必须保证用户账号在AD内是存在的。
      还原软删除的邮箱
      1、要还原 软删除的邮箱 Exchange 用户邮箱,需要知道账号“显示名(displayName)、邮箱所在的数据库(Database),需要使用如下命令。
      此命令是 查询断开连接的邮箱显示名为杨园柱的基本信息 如需更精确使用displayName 查询可以把-like替换为-eq
      Get-MailBoxDatabase | Get-MailBoxStatistics | Where {($.disconnectReason -eq "disabled") -and ($.displayName -like "XXX*")} | fl displayName,Database

2、如果查询不到需要按照下列方式更新邮箱状态,就需要更新邮箱数据库上所有断开连接的邮箱的邮箱状态。
脚本如下(注:在老版本的exchange2010中使用 Clean-MailBoxDatabase -database "name"即可,新版本就较为麻烦了)
$database=Get-MailBoxDatabase | % {$.NAME}
foreach($DB in $database)
{
Get-MailBoxStatistics -Database $DB| Where { $
.disconnectReason -ne $null } | ForEach { Update-StoreMailBoxState -Database $.Database -Identity $.MailBoxGuid -Confirm:$false }
}

3、使用“New-MailBoxRestoreRequest”命令还原用户邮箱;-SourceStoreMailBox 后面参数是邮箱的GUID; -SourceDatabase后面的参数是该邮箱所在的数据库;-TargetMailBox 后面的参数是要恢复用户邮箱名;
此示例将邮箱数据库 DB21 上显示名称为 XXX的源邮箱还原到XXX的邮箱。
New-MailBoxRestoreRequest -SourceDatabase "DB12" -SourceStoreMailBox "XXX" -TargetMailBox XXX

还原禁用或者删除的邮箱
1、要还原被禁用或者删除的邮箱 Exchange 用户邮箱,、邮箱所在的数据库(Database)即可,需要使用如下命令。
此命令是 查询断开连接的邮箱显示名为ea02.srv邮箱所在的数据库
Get-MailBoxDatabase | Get-MailBoxStatistics | Where {($.disconnectReason -eq "disabled") -and ($.displayName -eq "XXX")} | fl Database

2、如果查询不到需要按照下列方式更新邮箱状态,就需要更新邮箱数据库上所有断开连接的邮箱的邮箱状态。
脚本如下
$database=Get-MailBoxDatabase | % {$.NAME}
foreach($DB in $database)
{
Get-MailBoxStatistics -Database $DB| Where { $
.disconnectReason -ne $null } | ForEach { Update-StoreMailBoxState -Database $.Database -Identity $.MailBoxGuid -Confirm:$false }
}

3、使用“Connect-MailBoxt”命令还原用户邮箱;
Connect-MailBox -Identity ea02.srv -Database db21 -User ea02.srv

相关文章

今天小编给大家分享一下excel图案样式如何设置的相关知识点,...
这篇文章主要讲解了“win10设置过的壁纸如何删除”,文中的讲...
这篇“Xmanager怎么显示远程linux程序的图像”文章的知识点大...
今天小编给大家分享一下xmanager怎么连接linux的相关知识点,...
这篇“如何重置Linux云服务器的远程密码”文章的知识点大部分...
本篇内容介绍了“Linux云服务器手动配置DNS的方法是什么”的...