引用岳雷老师的一段话”对Exchange服务器进行严谨周密的备份是管理员的基本职责,服务器发生问题时,最后的保护伞就是备份,备份也是我们进行灾难重建的物资基础。如果你从来没有对Exchange服务器进行备份,那一定要增加祈祷的次数^_^。“

既然我们要对Exchange进行数据库备份,我们应该对于备份的概念有一定了解,比如完全备份,增量备份,差异备份,副本备份,每日备份等,后续我也会测试下这些备份。具体也可以看下链接http://safe.zol.com.cn/318/3188396.html

案例:假设您在周一晚上9点对Exchange2003进行了完整备份,在周三的时候数据库出现了问题,那么在无法修复数据库的情况下,我们就可以考虑数据库的还原。好的,我们把数据库状态还原到周一时候的状态,我靠,这个不行吧老大,那咋周一以后的数据咋办?很显然,我们要把周一备份之后的数据也进行恢复。这样就涉及到了一个日志重播的概念,即我们还原到周一备份后的数据库,然后对数据库进行日志的播放,把周一备份之后日志重新写入数据库,这样就可以恢复我们的数据了。

下面我将使用Ntbackup对Exchange2003存储组进行备份,Ntbackup属于联机备份Exchange,即在备份Exchange的同时用户也可以访问Exchange。首先我们让用户user5给user6发送一封邮件这封邮件中我带了一些附件主要目的是让Exchange数据库文件产生大量的日志文件,如下图所示

Ex2003学习(十),备份数据库和还原数据库_数据库备份

Exchange服务器的日志文件

Ex2003学习(十),备份数据库和还原数据库_修复_02

在Exchange服务器开始运行中输入ntbackup,然后在备份中选择备份的存储组,点击开始备份

Ex2003学习(十),备份数据库和还原数据库_服务器_03

点击开始备份后出现如下视图,我先别急着点击”开始备份“,我们选择高级看下备份的类型

Ex2003学习(十),备份数据库和还原数据库_服务器_04

目前默认的备份类型为:正常备份(即完全备份),选择这种备份类型后会把我们存储组的日志进行清除。

Ex2003学习(十),备份数据库和还原数据库_灾难_05

好了我们开始进行备份,如下图备份成功

Ex2003学习(十),备份数据库和还原数据库_管理员_06

产生的备份文件,如下图所示

Ex2003学习(十),备份数据库和还原数据库_服务器_07

刚才我们看到大量的日志文件,在正常备份后,日志被清除了,如下图所示。(提醒下:只有在完全备份和增量备份后日志文件才会被清除,其它备份类型不会对日志文件进行清除

Ex2003学习(十),备份数据库和还原数据库_管理员_08

上面我们就模拟了周一对Exchange服务器进行备份,下面我们让user5在给user6发送一封999邮件,目的就是模拟周一备份之后邮件的发送

Ex2003学习(十),备份数据库和还原数据库_灾难_09

这封邮件同样让Exchange产生了很多日志文件

Ex2003学习(十),备份数据库和还原数据库_管理员_10

现在假设我们的数据库出现了问题,无法进行修复,那么我们就要进行存储组的还原,如果还原到备份状态,那么user5的发件箱中只有一封邮件,所以我们必须还原到user5已发送邮箱中有123和999这个状态(需要进行日志文件的重播,即999产生的日志文件重新写入数据库),如下图我们先对“公用文件夹存储”和“邮箱存储进行卸载”

Ex2003学习(十),备份数据库和还原数据库_服务器_11

Ex2003学习(十),备份数据库和还原数据库_修复_12

(卸载后我们需要先备份下MDBDATA数据库文件夹即复制一份到其它地方,在装载状态下是无法复制的),然后右击公用文件夹存储,选择“还原时可以覆盖此数据库”

Ex2003学习(十),备份数据库和还原数据库_管理员_13

邮箱存储也选择“还原时可以覆盖此数据库”,应用,确定

Ex2003学习(十),备份数据库和还原数据库_修复_14

上面的准备工作做好后,接下来使用NTbackup进行还原,如下图选择刚才的备份文件,默认只能还原到原位置,选择开始还原。(注意到了吗,这里有日志文件,这个日志文件是我们备份的时候产生的,)

Ex2003学习(十),备份数据库和还原数据库_灾难_15

点击开始还原后出现如下向导,在这里我们只有一台Exchange服务器(03server03),“日志及修补文件的临时位置”我选择在d:\30,然后一定要勾选上“上次还原集(还原结束后日志文件播放会开始)点击“确定”开始还原。播放哪些日志文件呢?其实播放的日志文件有两部分,一部分是还原的d:\30中的日志文件,还有一部分是发送999邮件产生的那些日志文件。微软原话我也给个截图,具体链接地址:http://technet.microsoft.com/zh-cn/library/aa997761(v=EXCHG.65).aspx

Ex2003学习(十),备份数据库和还原数据库_数据库备份_16

Ex2003学习(十),备份数据库和还原数据库_服务器_17

如下图还原成功

Ex2003学习(十),备份数据库和还原数据库_管理员_18

还原成功后我们右击“存储公用文件夹”和“邮箱存储”进行装载均提示错误如下图,即无法进行装载(为什么无法装载,在Exchange数据库中无法装载的原因是数据库文件没有正常关闭称之为dirtyshutdown,没有正常关闭意味着有日志文件没有写入数据库,我们可以通过eseutil/mh来查看数据库状态,这个参数会告诉你数据库需要的日志文件,这个参数的详解请见微软:http://technet.microsoft.com/zh-cn/library/aa998760.aspx

Ex2003学习(十),备份数据库和还原数据库_管理员_19

我们运行下eseutil/mh来查看下数据库状态和需要的日志文件,如下图数据库状态为dirtyShutdown,需要的日志文件是164-164

Ex2003学习(十),备份数据库和还原数据库_灾难_20

因为dirtyshutdown导致了无法装载,那么我们只能使用eseutil/p对”和“邮箱存储”和“公用文件夹存储,进行修复。如下图我们对邮箱存储进行修复,提示修复操作可能对数据库进行损坏,我们选择“确定”

Ex2003学习(十),备份数据库和还原数据库_修复_21

如下图提示修复完成

Ex2003学习(十),备份数据库和还原数据库_修复_22

如下图对公用文件夹存储进行修复

Ex2003学习(十),备份数据库和还原数据库_数据库备份_23

公用文件夹存储修复成功

Ex2003学习(十),备份数据库和还原数据库_修复_24

这时候我们再来邮箱存储和公用文件夹存储的状态是否为cleanshutdown(干净关闭),如下图邮箱存储状态已经为“cleanshutdown,需要的日志为0-0(意思是不需要日志)

Ex2003学习(十),备份数据库和还原数据库_灾难_25

如下图查看下公用文件夹存储的状态同样是干净关闭状态,日志需要为0-0

Ex2003学习(十),备份数据库和还原数据库_修复_26

现在我们就可以进行公用文件夹存储和邮箱存储的装载了,如下图装载成功,这样整个过程恢复过程就完成了

Ex2003学习(十),备份数据库和还原数据库_数据库备份_27

我们用owa查看下user5发件箱中的邮箱看看,如下图999和123都在,(实验中请勿用outlook进行查看,因为outlook可能使用了缓存模式,而OWA模式是跟数据库文件同步的)

Ex2003学习(十),备份数据库和还原数据库_灾难_28

最后,如果以上写的有问题希望大家指出,这样方便交流技术,谢谢!