案例讲述:
我目前环境中有一套Exchagne01和Exchange02服务器,全部是全角色安装的exchange2013CU8的系统。
这两台服务器同属一个DAG组,由于特殊原因DAG的故障转移群集出现问题,无法正常恢复,导致用户邮箱不能访问。
目前发现Exchange01上的数据库被动副本数据复制不正常,Exchagne02上的数据库主动副本数据内容正常。
此过程中服务器DAG组无法恢复正常,用户没法访问邮箱。多次尝试也不能将Exchange01或者Exchange02任意一台从DAG中删除。
为了尽快恢复用户访问,我们在环境中全新部署了Exchange04服务器,该服务器正常运行,可以新建用户和数据库副本。
随后我们将Exchange02服务器上正常的数据库副本拷贝到了Exchange04的默认数据库副本目录下。
如何才能使这个正常的数据库副本挂载到Exchange04上,使用户可以正常访问邮箱
解决方案如下:
https://technet.microsoft.com/zh-cn/library/dd876926(v=exchg.150).aspx
数据库可移植性是使 Microsoft Exchange Server 2013 邮箱数据库移动到或装入同一组织中的任何其他邮箱服务器的功能,此组织运行具有相同数据数据库架构版本的数据库的 Exchange 2013。以前版本的 Exchange 的邮箱数据库无法移动到运行 Exchange 2013 的邮箱服务器。通过使用数据库可移植性,可以免除恢复过程中容易导致错误的多个手动步骤,从而提高可靠性。此外,数据库可移植性可减少各种故障情况的总恢复时间。
当使用数据库可移植性恢复邮箱数据库时,操作系统版本、源上的 Exchange Server 版本以及目标 Exchange 服务器必须相同。 例如,如果 Exchange 2013 邮箱数据库之前已装入运行 Windows Server 2012 的服务器,那么只有在将数据库迁移到同样运行 Windows Server 2012 和 Exchange 2013 的服务器上时,数据库可移植性才能正常使用。
https://technet.microsoft.com/zh-cn/library/dd876873(v=exchg.150).aspx
1. 首先可以看到原始邮箱里的邮件都在:
以下操作假定用户原有的数据库突然崩溃 无法挂载访问。
2. 用户邮箱在如下DB中:
3. 然后新建临时数据库Temp:
4. Mount 新建的DB:
5. 把用户mount 到临时库上: (如果是整个数据库的用户就用Get-mailbox –database “原数据库名” |set-mailbox –database “临时数据库名” )
6. 重新配置邮箱账号,可以发现邮箱里面空了,但是邮箱是处于连接的状态:
PS:此时如果尝试去打开原配置账号会发现如下的报错信息:
7. 可以发现,此时用户邮箱可以正常收发邮件,但是以前的邮件都没了:
8. 此时第一阶段就算完成了,用户邮箱可以基本可以正常使用。那么下一步,就是要是帮用户恢复以前的邮件。
9. 使用备份里恢复出来原Edb文件
10. 运行如下命令行新建一个DB:
11. 此时数据库文件夹里是空的:
12. 此时Mount该DB:
13. 此时可以发现Recover.edb文件被生成了:
14. 这时把数据库Dismount 掉:
15. 把备份里恢复出来的edb文件拷贝到新的DB的文件夹里,把原DB拷贝到一个新的位置并且把拷进来的DB名字改成Recover:
16. 启用数据库的如下属性:
17. Mount 数据库
18. 把邮箱设置到这个数据库上:
19. 此时可以看到用户的原邮件都回来了:
20. 现在要做的就是恢复临时库里的邮件到这个库里面来:
21. 运行如下命令行检查export请求的状态。如果发现一直处于queue的状态的话,重启replication服务:
22. 此时可以看到那些邮件恢复出来了:
Exchange 2013数据库可移植性恢复用户数据库(一)
原文地址:http://blog.51cto.com/xinuo/2087208