如何使用EseUtil进行Exchange数据库修复
简介:可扩展存储引擎实用程序或EseUtil是一个命令行工具,用于解决由数据库损坏引起的问题。对于管理员来说,它是一个非常有用的Exchange工具,因为它可以帮助他们执行各种Exchange数据库维护和修复任务,例如数据库完整性检查、碎片整理、减小数据库大小以及修复或恢复损坏的数据库文件。在本指南中,我们详细讨论了EseUtil以及将其用于Exchange数据库修复和各种其他维护任务的步骤。
内容
当数据库从服务器卸载或无法访问时,通常需要Exchange数据库(EDB)恢复。这可能是由于多种原因造成的,例如服务器崩溃、强制或突然关闭、病毒或恶意软件入侵,或软件和硬件故障。从损坏或损坏的数据库中恢复可能是一种棘手的情况,具体取决于损坏的程度。在Exchange Server中,微软提供了一个名为EseUtil的本地命令行工具,它可以帮助检查数据库的状态并执行软恢复或硬恢复。它还可以帮助恢复EDB文件拨号音恢复和恢复数据库(RDB).
当软恢复无法修复服务器上的数据库时,需要进行硬恢复。但是,对于硬恢复,您必须接受数据丢失,因为此过程将从数据库中永久清除所有损坏或不可恢复的数据。因此,不建议执行硬恢复。相反,您可以使用Exchange恢复软件修复Exchange数据库,而不会丢失任何数据。该软件还恢复意外删除的邮箱和邮箱项目在数据库修复期间。
Exchange数据库文件位置
默认情况下,在安装Exchange时在以下位置创建数据库。
C:\Program Files\Microsoft\Exchange服务器\Vxx\邮箱\<数据库>
这里,Vxx表示Exchange版本。

在此位置,除了存储数据库文件外,还存储以下文件:
- Exchange邮箱数据库文件
Exchange数据库(.edb)文件存储服务器上的所有邮箱和数据。您可以使用Exchange Management Shell (EMS)更改数据库名称或位置。

- 日志文件
日志文件(如E001.log)保存在Exchange上执行的事务记录。

- 检查点文件
检查点文件,如E001。Exchange服务器使用chk来跟踪数据库和日志文件之间的关系。

- 保留的日志文件
这些是.jrs格式文件,如E00res0001E。当出现某种情况(如磁盘已满)时,Exchange使用jrs保存事务日志。它在将更改从日志文件提交到数据库之前检查可用的磁盘空间。

- 临时日志文件
创建新日志文件时使用临时日志文件,如E00tmo1.log。

EseUtil开关
若要在无法访问、损坏或损坏的数据库上执行不同的Exchange维护和修复任务,可以使用以下EseUtil交换机:
开关 | 描述 |
Eseutil / D | 整理离线数据库文件。有助于减少Exchange数据库在磁盘上的总体大小,并优化数据库文件以提高性能。还有助于保持对数据库健康状况的检查。 |
Eseutil / R | 允许您恢复数据库。它重放事务日志文件,将数据库从“脏关机”或“不一致”状态变为“干净关机”或“一致”状态。 |
Eseutil / C | 执行硬恢复并显示数据库的恢复日志文件。 |
Eseutil / M | 显示数据库文件、日志文件和检查点文件的头信息。它还显示了数据库空间分配和带有元数据的页头信息。 |
Eseutil / P | 修复损坏或损坏的数据库。它会删除无法修复的页面。这可能会导致数据丢失,因为它会从数据库中删除严重损坏的内容。 |
Eseutil / G | 用于执行完整性检查。它验证页面级和esb级数据库完整性检查,以检测与数据库的特定不一致。 |
Eseutil / Y | 快速复制邮箱数据库文件等大文件。 |
Eseutil / K | 执行校验和测试以验证数据库文件、事务日志文件和检查点文件中的页。 |
Eseutil / MH | 显示数据库状态,即脏关机(不一致)或干净关机(一致) |
运行EseUtil的先决条件
在运行EseUtil验证、修改或修复Exchange数据库之前,必须确保满足以下先决条件:
- 备份Exchange数据库文件
- 管理员访问或权限
- 可用存储空间(至少是数据库大小的1.2倍)
使用EseUtil进行Exchange数据库修复的步骤
下面我们讨论了使用EseUtil修复Exchange数据库的步骤和要求。
步骤1:找到EseUtil
要使用EseUtil,您需要找到它。您可以在Exchange安装的Bin目录中找到EseUtil.exe实用程序。例如,如果在C: drive volume中安装了Exchange 2013或2016,则可以在以下路径中找到EseUtil:
C:\Program Files\Microsoft\Exchange Server\V15\Bin\

验证路径后,以管理员身份打开命令提示符,然后使用以下命令将目录路径更改为EseUtil位置:
cd C:\Program Files\Microsoft\Exchange Server\V15\Bin

但是,如果EseUtil路径被添加到环境变量列表中,您可以从任何位置直接启动命令提示符并运行EseUtil命令。
步骤2:检查数据库大小
如果数据库大小为10gb,请打开1221事件ID,检查数据库中是否有空白。一旦知道,从总数据库大小中减去空白数据库大小。这是使用EseUtil进行Exchange数据库修复所需的最小存储空间。
步骤3:检查数据库状态
要识别数据库状态,请使用/MH开关。如果状态显示为Clean Shutdown,则不应该有任何问题,并且可以在将所有日志文件移动到不同位置后轻松地挂载数据库。
但是,如果数据库在肮脏的关闭状态,数据库将无法挂载。这表示数据库不一致或损坏。这可能是由于日志文件丢失或被删除以及日志文件未提交到数据库时造成的。
检查数据库一致性或状态的命令如下:
Eseutil /mh <数据库文件名>

步骤4:检查日志
如果您的数据库处于脏关机状态,您将看到它下面的另一行,其中提到了所需的日志文件。下一步是检查日志是否正常运行,或者日志是否存在问题。为此,使用带有EseUtil的ML前缀和日志路径,您可以从日志需要报告的一部分。
eseutil /ml "M:\mbx01\logs"

这将显示日志状态。如果所有日志都运行正常,则会收到一条消息,显示“未发现损坏的日志文件”。
步骤5:执行软恢复
当日志运行正常时,可以使用EseUtil / r参数.
Eseutil /r e00 /l "M:\mbx01\logs" /d "M:\mbx01\database"

方法重新检查数据库状态Eseutil / mh命令,然后使用mount - database cmdlet挂载数据库。修复过程可能需要一段时间才能完成,具体取决于数据库的损坏程度或大小。
第六步:执行硬恢复
如果仍然出现错误,并且数据库仍然处于肮脏的关闭状态,然后尝试通过硬恢复修复数据库。但在此之前,您必须知道此修复过程将清除EseUtil发现的任何损坏的数据。您需要考虑并接受硬恢复将导致的数据丢失,而不考虑损坏。
运行硬恢复,使用eseutil / p命令。此外,如果有足够的存储空间来处理数据库,那么硬恢复可能会花费相当长的时间。此外,一旦你开始,你会被提醒的损害。您必须接受警告,通过EseUtil的硬恢复继续修复Exchange数据库。


一旦完成,使用IsInteg工具用于索引修复。IsInteg是一个修复工具,它理解表和记录之间的关系,并将它们转换为文件夹和消息。该工具位于以下位置:
C:>Program Files>Exchsrvr> bin
然后使用以下命令运行IsInteg测试:
Isinteg -s-fix -test所有测试
您可以多次重复该命令以消除错误。一旦修复了错误,就可以挂载数据库了。
此外,您还可以使用New-MailboxRepairRequest,如果您使用的是带有SP1或更高版本的Exchange Server 2010,在将数据库挂载到服务器上之前。还有一点,这个过程一旦开始就无法停止。如果无论如何都停止它,可能会对数据库造成更大的损害。但是,如果一切顺利,您就可以挂载数据库了。

在使用EseUtil进行Exchange数据库修复之前要记住的要点
在使用EseUtil之前,您必须记住以下要点:
- EseUtil不是一个万无一失的实用程序。根据您选择的恢复方法和数据库损坏的程度,它可能会失败并导致更多的损坏或数据丢失。
- 在恢复之后,没有必要能够挂载数据库。
- 根据数据库的大小和损坏程度,在EseUtil数据库修复过程中,用户将无法接收、发送或使用其邮箱。这可能导致几个小时的停机时间,并可能对业务造成损害。
或者,您可以使用星修交换在更短的时间内毫不费力地完成这项工作。应用程序可以从任何Exchange Server版本打开损坏的EDB文件。然后可以修复数据库。它还允许您使用搜索过滤器执行粒度搜索。
该软件帮助提取邮箱,并保存在PST格式时,数据库被损坏,没有可能的方法来修复它。这有助于避免停机时间并恢复用户邮箱,以便业务可以继续进行。你也可以用这个教育局恢复软件将邮箱从EDB文件直接导入到具有自动邮箱匹配选项的实时Exchange Server数据库中。
除了PST, Stellar Repair for Exchange还可以将邮箱和邮箱项目导出为其他文件格式,如EML、PDF、MSG、HTML和RTF,并直接导出到Office 365帐户。
Eseutil需要很长时间才能执行?你能告诉我解决办法吗?
这取决于数据库的损坏程度。还要注意,您应该至少有20%的exchange数据库文件大小的空闲空间。
PS:在进行修复之前,还要对数据库进行备份。如果您想在最短的停机时间内修复数据库,也可以检查Exchange的Stellar Repair。