Exchange服务器完全可以运行,但当然Exchange本身并非如此;但是,数据库文件是安全的,甚至可以使数据库进入干净的关闭状态.
AD域必须从头开始重建;没有真正的大损失,它是一家小公司,20台PC需要重新加入一个新域,20个用户将面临干净的用户配置文件,一些文件共享需要重新ACL,但总体来说这并不是一场大灾难(虽然它肯定告诉他们,虽然拥有一个DC只意味着要求麻烦,拥有一个DC并且没有备份它是非常疯狂的).
该公司实际上并不想再次启动Exchange:他们承认他们完全不适合运行比文件服务器更复杂的东西,并且全心全意地转向Office 365;但是,他们想要恢复他们的Exchange数据.
我可以构建我需要的任何实验室环境,从而创建一个新的AD和一个新的Exchange 2013服务器是没有问题的;但是,为了在新的AD / Exchange环境中安装恢复的数据库,我实际需要做些什么?
我几年前用Exchange 2003做过这个,它是a royal pain;它工作正常,但它需要匹配每一个Exchange配置,从AD和Exchange组织名称到数据库路径和用户名.但是,我们现在拥有Exchange 2013,它有许多很好的改进,可以使事情变得更容易:管理/路由组不再存在,新的存储架构废除了存储组,并将数据库与服务器分离,最后有传说中的database portability (但只表示在同一组织的服务器之间工作)和绝对可爱的recovery databases.
我所知道的:已解散的AD域的名称,Exchange服务器的名称,数据库名称及其文件路径,Exchange 2013版本(CU3).
我不知道的:Exchange组织的名称(我可以猜,但我不能确定),用户登录(与上面相同).
为了装入Exchange数据库并运行多个MailBoxExportRequests,还需要匹配多少这些参数?这个恢复过程是否有所改善,还是手动仍然很痛苦?恢复数据库是否有帮助(我只需要挂载数据库并导出数据,而不是实际使用它)?
它甚至可以像“只需启动一个新的Exchange服务器,创建一个空的数据库,复制恢复的文件,安装数据库并导出所有内容”一样简单……或者我们肯定还没有完全存在?
解决方法
无论组织和/或Active Directory域如何,任何Exchange 2013数据库都可以安装在任何Exchange 2013服务器上(尽管服务器可能需要相同或更高的CU级别).
如果在服务器上安装了外部数据库,它将完美地工作,甚至可以用于存储新邮箱;数据库中的所有邮箱都将被视为已断开连接的邮箱,它们可以连接到用户帐户,可以毫无问题地使用,并且(当然)可以导出.
确实是数据库的可移植性!毕竟,看起来我们还在那里.
因此,在原始环境不可用时从Exchange数据库恢复数据的过程如下:
>构建新的Active Directory域和新的Exchange 2013服务器(如果有可用的话,甚至可以使用现有的服务器);它们可以按照您的意愿命名,所有名称都完全不相关.
>创建一个新的空邮箱数据库;数据库名称和文件路径根本不重要.
>允许从还原中覆盖数据库.
>从原始服务器获取EDB文件并确保其处于干净关闭状态(如果不是,请使用eseutil和原始事务日志执行标准数据库恢复).
>将EDB文件放在新Exchange服务器期望找到新数据库的位置(如果需要,可以重命名).
>装入数据库.
>使用Get-MailBoxStatistics cmdlet获取数据库中的邮箱列表.
>根据需要创建任意数量的用户帐户,以重新连接要恢复的邮箱.
>使用Connect-MailBox cmdlet将数据库中的邮箱连接到新用户帐户.
而已;现在您可以使用恢复的maiBoxes,或者可以使用New-MailBoxExportRequest cmdlet将它们导出到PST文件.