系统环境:
WIN 2008 R2 SP1 + EXCHANGE 2010 SP1,WIN AD 域环境。为方便表述,本文定义如下
1.有故障的WIN 2008 R2 及exchange分别命名为 winOld,exold
2.新WIN 2008 R2及exchange分别命名为winNew,exNew
故障现象:
1、系统在特定场景下不断重启,报错“WINDOWS 已遇到关键问题,将在一分钟后自动重新启动。请立即保存您的工作”。同时检查工作日志有事件ID 1015 错误日志“关键系统进程,C:Windowssystem32lsass.exe,失败,状态码为 255。现在必须重新启动计算机。”。
2、用户端outlook能将邮件发送出去,但是接收不到(对内对外均如此)。同时从互联网发邮件到exchange能正常接收。
排错过程:
经过多方排查,发现只要启动microsoft exchange 传输 服务,就会触发lsass.exe崩溃自动重启操作系统。
怀疑是OS遭受病毒导致操作系统完全崩溃,于是重新起了一台WIN 2008 R2准备灾难恢复安装。
恢复过程:
1、根据网上教材下线断网winOld,并安装好winNew,新计算机名需和之前计算机名一致(IP地址可以不一样,但是加域后要在DNS里检查相关解析是否有更新过来到新IP),winNew强制加域。
2、灾难恢复安装exchange ,命令为 setup.exe /mode:recovery ,具体步骤略,需注意要安装microsoft filter pack 2.0及相关补丁。
3、安装完成后,重启电脑,启动exchange服务,故障重现。。于是又回到最开始研究问题原因及解决办法。
4、查阅大量资料并安装多个补丁包后,终于在打最后一个补丁包后WIN 2008 R2神奇的不重启了。(请注意神奇的KB4493448)。此时回顾第1/2步做法崩溃到想哭。。。
5、灾难恢复邮件数据库步骤
恢复思路:因winOld服务器上的邮件数据库并未损坏,是否可以将该edb数据库恢复到winNew服务器上使用?
5.1创建恢复数据库
New-MailboxDatabase -Recovery -Name RDB -Server email -EdbFilePath “D:restoreRDB.edb” -LogFolderPath “D:restore”
特别说明:
RDB.edb为新建的数据库
路径要指定的已有数据库(待恢复的源数据库路径)文件,而不是空路径让系统自动生成,这一步非常重要。
上述命令的解读是创建一个恢复型的数据库,名为RDB。使用已有的数据库RDB.edb来载入。
5.2挂载数据库,创建RDB后,在EMC里将该RDB数据库挂载起来(EMC-组织配置-邮箱-数据库管理)。
如果数据量大的话,要耐心等待几分钟,EMC里才会将”未知”状态更新成”已卸载”状态,更新成已卸载状态就可以挂载。
5.3检查恢复数据库创建成功了没有,如果创建成功则继续下一步
Get-MailboxDatabase
5.4检查恢复数据库里是否有数据,正常来说能看到该待恢复数据库里所有相关邮件用户、邮件数量等信息。如果看不到的话,则该数据库存在问题,需要使用eseutil /p 命令进行修复,直到用eseutil /mh 查询该数据库是cleanshutdown为止,然后再重复5.1–5.5步。
Get-MailboxStatistics -Database RDB
5.5恢复邮件
恢复单个员工的邮件数据 Restore-Mailbox -Identity “jacky.zhang” -RecoveryDatabase RDB
恢复所有员工邮件数据 Get-Mailbox -Database ABC | Restore-Mailbox -RecoveryDatabase RDB
备注:ABC 是目标数据库,RDB是源数据库。该命令解读为在你当前的exchange数据库ABC库里读出所有用户名,并看看RDB里有没有对应的用户邮箱,有的话从RDB里恢复过去ABC里。