如何在恢复模式下运行 Eseutil /R

 

上一次修改主题: 2006-06-09

恢复指的是将事务日志文件播放到数据库的过程。有两种类型的恢复:硬恢复和软恢复。硬恢复可以通过在还原模式 (/C) 下运行 Eseutil 来完成。有关了解 Eseutil 恢复的详细信息,请参阅 Eseutil /R 恢复模式

  • 使用 Eseutil 运行软恢复的基本命令行语法是:

    
                    ESEUTIL /R Enn
                  
    
  • 例如:

    
                    ESEUTIL /R E00
                  
    
    note注意:
    Enn 指定要播放到数据库的事务日志的日志文件前缀。仅当从事务日志文件所在的文件夹运行命令、并且要恢复的数据库位于原始路径位置时,此命令行才有效。日志前缀说明符是 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 之后,当它再次变得可用时,可能无法用于恢复丢失的数据库。

此恢复方法将恢复过程从运行存储组中完全分离出来。如果要将所有日志文件播放到备份中,这也是在恢复存储组中恢复脱机备份应采用的方法。

在准备执行此操作时,应移动数据库文件(.edb 和 .stm)和要播放到单个临时文件夹的所有事务日志。

  • 在此文件夹中,可以运行以下命令:

    
                                ESEUTIL /R Enn /I /D
                              
    
  • 例如:

    
                                ESEUTIL /R E00 /I /D
                              
    

可能需要 /I 开关,也可能不需要 /I 开关,具体取决于附加到日志的其他数据库的事务日志中是否存在“干净关闭”记录。在这种情况下建议使用该开关,这样当日志文件中的某个位置存在“挂起的附件”时,不必再次启动恢复。

应该更详细地说明 /D 开关的行为。如果 /D 开关根本不存在,则在事务日志文件中记录的数据库路径将用于定位数据库。这是在 Exchange 2000 和以前版本的 Eseutil 中唯一可用的行为。如果 /D 开关没有与路径一起使用,则会将当前目录用作数据库文件的路径。如果 /D 开关后面紧跟着(之间没有空格)一个文件路径,则该路径将用于定位数据库文件。有关使用 /D 开关解决事务日志出现的问题(在移动 Exchange 数据库时)的详细信息,请参阅“移动 Exchange 邮箱数据库时事务日志文件出现的问题”。

由于可能发生键入错误,因此强烈建议从所有数据文件所在的文件夹运行 Eseutil,以避免将路径与 Eseutil 开关一起使用。

在完成恢复且数据库文件处于“干净关闭”状态之后,可能会将数据库文件移动到相应存储组中的适当位置,并通过装入数据库将其附加到该处的日志文件。

note注意:
在数据库装入之前,通常有必要在 Exchange 系统管理器中的数据库对象属性上选中“还原时可以覆盖此数据库”复选框。

Exchsrvr\Bin 文件夹中,于命令提示符下键入 eseutil ./?,然后选择 R 进行还原,这样就可以查看此命令行参考。

RECOVERY:
    DESCRIPTION:  Performs recovery, bringing all databases to a
                  clean-shutdown state.
         SYNTAX:  ESEUTIL /r <3-character logfile base name> [options]
        OPTIONS:  zero or more of the following switches, separated by a space:
                  /l<path>          - location of log files
                                      (default: current directory)
                  /s<path>          - location of system files (eg. checkpoint file)
                                      (default: current directory)
                  /i                - ignore mismatched/missing database attachments
                  /t                - on successful recovery, truncate log files
                  /u[log]           - stop recovery when the Undo phase is reached with the option
                                      to stop when a certain log generation is recovered.
                                      [log] is the log generation number and if not specified
                                      the replay will go to the end of the existing logs.
                  /d[path]          - location of database files, or current directory
                                      if [path] not specified (default: directory
                                      originally logged in log files)
                  /n<path1[:path2]> - new location of database file and optional old location
                                      if the database file location changed.
                                      Can be specified for each database file.
                                      If a certain database is not in the list,it won't get recovered.
                                      To allow recovery in the original location
 for all other database, use /n*.
                                      (not valid with /d switch, not valid with
/b switch)
                  /8                - set 8k database page size (default: 4k)
                  /o                - suppress logo
 
显示: