Eseutil /R 恢复模式

 

适用于: Exchange Server 2007 SP3, Exchange Server 2007 SP2, Exchange Server 2007 SP1, Exchange Server 2007

上一次修改主题: 2011-06-16

恢复是指将事务日志文件重播到数据库的过程。有两种类型的恢复:

  • 硬恢复   通过联机备份还原数据库之后进行的事务日志重播过程。

  • 软恢复   下列情况下进行的事务日志重播过程:发生意外停止后重新装入数据库时,将事务日志重播到数据库的脱机文件副本备份时,或将日志重播到卷影复制服务 (VSS) 备份集时。

有关语法以及运行 Eseutil /R 恢复模式的详细信息,请参阅如何运行 Eseutil /R(恢复)

硬恢复

必须将事务日志文件重播到还原的联机备份时,会进行硬恢复。在所有其他恢复方案中都将进行软恢复。使用 Exchange Server 数据库实用程序 (Eseutil.exe) 的还原模式 (/C) 可以进行硬恢复。

软恢复

在默认的软恢复方案中,外部事件意外地停止 Exchange 数据库,但是数据库文件和日志文件保持完好。重新装入数据库时,Exchange 将读取检查点文件并开始重播作为检查点日志列出的事务日志。如果没有检查点文件,将从存储组的事务日志文件夹中最早的可用日志文件开始重播。

Exchange 将在日志文件中找到的、尚未写入的已完成事务写入数据库文件并撤消任何未完成的事务。在组成事务的所有操作全部安全地写入日志文件之前,Exchange 不会开始将该事务写入数据库文件。如果意外停止时存在的所有未提交事务日志在重播开始时存在,则不必撤消或停止数据库中的事务。

important要点:
软恢复过程的一个基本假设是故障未移动、删除或破坏任何数据库文件或日志文件,管理员在故障之后也没有这样做。

特定恢复方案

下列各节介绍各种恢复方案。

事务日志文件未在当前文件夹中

通常,应始终从存在要重播的事务日志文件的文件夹运行 Eseutil /R。这是因为默认的软恢复过程在事务日志文件中查找数据库的路径。如果从没有任何日志文件的文件夹运行 Eseutil /R,将生成一个新的事务日志文件,此日志文件不会知道数据库的位置。如果希望从事务日志文件夹以外运行软恢复,请在命令中添加以下开关:

/Lpath_to_logfiles

例如:

Eseutil /R E00 /Ld:\exchsrvr\logfiles

控制检查点文件

在手动运行软恢复时,大多数情况下,将希望删除或隐藏检查点文件,这是因为您通常会希望重播所有可用的事务日志,而不是从可用序列的中间开始进行。

如果从存在有效检查点文件的文件夹运行软恢复,并且不希望该文件影响恢复,则必须为在恢复期间要创建的检查点文件定义其他路径。将脱机备份还原到运行数据库的存储组时,可能需要这样做。

如果从其他文件夹运行恢复,并且希望使用检查点文件控制恢复,则必须指向检查点文件的路径。

如果希望控制检查点文件在软恢复期间的使用,请在恢复命令中添加以下开关:

/Spath_to_or_away_from_current_checkpoint

例如:

Eseutil /R E00 /Sd:\

恢复丢失了邮箱数据库或公用文件夹数据库的存储组

如果存储组意外停止,并且有一个不一致的邮箱数据库或公用文件夹数据库已删除或不可用,则在还原丢失的数据库之前或使用 /I 开关运行手动恢复之前,将无法在该存储组中装入任何数据库。

important要点:
若要在忽略丢失的邮箱数据库或公用文件夹数据库的情况下进行恢复,应先备份所有事务日志文件,包括当前的日志文件 (Enn.log)。如果恢复其他数据库时更改了 Enn.log,该文件再次可用时,可能无法用于恢复丢失的数据库。

恢复非现场数据库

完全恢复非现场数据库的过程将恢复过程与正在运行的存储组隔离开。如果希望在恢复存储组中恢复脱机备份,并且希望将所有日志文件重播到备份中,请使用此方法。

为了准备执行此步骤,应将数据库文件以及所有要重播的事务日志移动到一个临时文件夹中。可以从此文件夹运行以下命令:

Eseutil /R Enn /I /D

例如:

Eseutil /R E00 /I /D

/I 开关可能是不需要的,这取决于附加到日志的其他数据库的事务日志中是否存在干净关闭记录。建议在此环境中使用该开关,这样,如果日志文件中存在挂起的附件,则不必重新开始恢复。

如果 /D 开关不存在,将使用事务日志文件中记录的数据库路径来定位数据库。如果使用不带路径的 /D 开关,将使用当前目录作为数据库文件的路径。如果 /D 开关后面紧随(中间没有空格)文件路径,将使用该路径定位数据库文件。

强烈建议您避免对 Eseutil 开关使用路径,因为可能会输错。避免的方法是尽可能从已存在所有数据文件的文件夹运行 Eseutil。

恢复完成并且数据库文件处于干净关闭状态之后,数据库文件可能会移动到相应的存储组中并附加到日志文件,从而装入数据库。

note注意:
在装入数据库之前,可能需要在 Exchange 管理控制台的数据库对象属性中选中“还原时可以覆盖此数据库”复选框。

恢复丢失了日志文件的数据库

在 Exchange Server 2007 中,有一项新功能可以避免 Exchange 数据库丢失最后几个日志文件,并且可以提高恢复速度。该功能称为回弹丢失日志 (LLR)。如果受 LLR 保护的日志文件丢失或损坏,使用没有新的 /A 恢复选项的 Eseutil 进行正常的数据库装入或恢复将失败。事件 ID 523 的事件日志表明故障类型。如果受 LLR 保护的日志文件丢失或损坏,可以在恢复模式下使用 /A 选项对数据库运行 Eseutil 恢复,如下所示:

ESEUTIL /R Enn /A

note注意:
在命令提示符下键入 eseutil /?,可以看到 Eseutil 的命令行参考和语法。但是,在 Exchange 2007 RTM 版的命令行参考中未列出 /A 选项。

在 Exchange 2007 之前,恢复丢失了日志文件的数据库时,必须通过备份还原数据库,或使用 Eseutil /P 修复现有数据库文件。在 Exchange 2007 中,数据库恢复得到增强,可以通过运行包含 /A 选项的恢复命令,恢复 LLR 范围中丢失了日志文件的数据库。

详细信息

有关 Eseutil 的详细信息,请参阅下列主题: