前几天遇到一个奇葩事情,公司在做Office365 Exchange Online混合部署的时候。一个用户在从本地Exchange 服务器迁移到Office365的时候,该用户账号莫名的就消失了!!对,你没看错,莫名的消失了。我并没有在本地禁用或者删除该用户,但是用户邮箱数据库就不翼而飞了。当然了,这个问题我们已经提交了CASE给微软Office365团队,具体原因待查明后,我会发到博客里面。

今天主要给大家分享的是找回这个邮箱数据的过程。

1. 在处理这个问题之前,首先我会仔细查看本地exchange服务器上的“已断开连接”邮箱,发现并没有该用户的邮箱。难道这个用户的邮箱真的“蒸发”了!?

image

2. 由于不死心,登上服务器去使用命令来查

查看目前邮件服务器中的已断开连接的邮箱

Get-MailboxDatabase | Get-MailboxStatistics | where {$_.DisconnectReason -ne $null} | ft displayname,database,disconnectreason -auto

clip_image001

在列表中并查找我们需要的已断开连接的用户,结果却是没找到。悲剧啊~~~

clip_image002

3. 后来查看了洋鬼子的资料之后发现,通过清理邮箱数据库可以重新整合邮箱数据库数据,类似于PC中的“刷新”

这里要重点介绍一下,Exchange 2010 和 Exchange 2013的命令不一样,这个也是查了好久才查到的,搞死人啊~~

Exchange 2010 在Eexchange PowerShell中运行

clean-mailboxdatabase "数据库名"

clip_image003

Exchange 2013在Eexchange PowerShell中运行

Get-MailboxStatistics -Database "Database name" | ForEach { Update-StoreMailboxState -Database $_.Database -Identity $_.MailboxGuid -Confirm:$false }

详细说明请参考: http://blogs.technet.com/b/exchange/archive/2013/10/28/recovering-public-folder-information-in-exchange-2013-part-2.aspx

clip_image004

4. 再次通过第二步的命令查找断开连接的邮箱用户,该用户出现!

clip_image005

5. 接下来就不用我说了吧,重新挂载即可

Exchange2010界面

clip_image006

Exchange2013界面

clip_image007

clip_image008