切换到宽版
  • 6900阅读
  • 0回复

[求助]Exchange 常用工具 [复制链接]

上一主题 下一主题
 
只看楼主 倒序阅读 0楼  发表于: 2011-09-02
exchange是一种功能强大的邮件服务器,提供了很多的命令行的工具,有些工具在灾难恢复里面是很长用的.对于初学者还是有一定的难度,许多的工具都没有系统的中文说明.以下是我整理出来的四个工具说明,是我自己的学习资料,由于我也是初学者,所以难免有问题,请大家原谅.也希望大家能够指正.
Exchange 四种实用工具说明:
一、MTACheck  
Message Transfer Agent 检查工具 (MTACheck) 用于对损坏的 MTA 数据库进行软恢复。该工具在安装 Exchange Server  时自动安装,可在 %Exchange_Root%\Bin 目录中找到。
MTACheck 必须从 Exchange Server 计算机的命令提示符下运行。MTACHECK 命令具有下列可选开关:  
mtacheck.exe /v /f mtacheck.log /rd /rp /rl
/v 记录详细信息
/f 记录到文件。本开关及其后面的文件名之间有一个空格。
/rd 删除目录复制消息
/rp 删除公用文件夹复制消息
/rl 删除连接监视器消息

MTACheck 输出结果说明
MTACheck 对数据库中的每个队列进行检查。如果发现错误,则报告队列名称、错误类型和返回到重建队列的邮件数目。如下例所示:
Queue ’xxxxxxx’ required reconstruction
- corrupted queue file
23 messages recovered to the queue
接下来,MTACheck 检查队列中的对象。如果某个对象出现错误,MTACheck 会将该对象从队列中删除并放入 Exchsrvr\mtadata\mtacheck.out 中。MTACheck 报告对象标识 (ID)、错误类型、队列名称和损坏邮件的 MTS-ID(如果知道)。  
虽然网关可以分配其它的标识,但每个邮件都会通过其传输服务分配到一个 MTS-ID,该 MTS-ID 会和邮件一起到达目标位置。 MTS-ID 由发送邮件服务器、发送邮件的日期和时间以及邮件的唯一十六进制标识组成。
MTACheck 日志示例可能包括:
Object 3005Array6 invalid
- missing object file
Object removed from queue ’xxxxxxx’
MTS-ID:c=US;a= ;p=Owen;l=Washington01Array6012020010800000CDE
MTACheck 结果
MTA 在处理完毕后,会显示下列消息之一来描述结果:
Database clean, no errors detected.(数据库干净,未检测到任何错误。)
Database repaired, some data may have been lost.(已修复数据库,某些数据可能已丢失。) bitscn.com
The number of queues repaired out of the percent detected.(修复的队列数目超过检测到的百分比。)
The number of objects damaged out of the percent detected.(损坏的对象数目超过检测到的百分比。)
Database has serious errors and cannot be reconstructed.(数据库存在严重错误,无法重新构建。)
Some objects missing from the Boot Environment.(有些对象从引导环境丢失。)Please reload the files from the BOOTENV directory on the installation disc.(请从安装盘上的 BOOTENV 目录重新加载文件。)  www.bitsCN.com
最后一条消息表明 MTA 需要的报告模板和其它对象丢失,MTA 无法生成它们。这些对象包含在 \BOOTENV 目录中。安装完毕后,重新运行 MTACheck。完成该过程之后,重新启动 MTA。
警告 只复制丢失的对象。如果替换现有对象,MTA 队列中的所有邮件都将删除。

二、ESEUTIL
ESEUTIL/EDBUTIL 是一种脱机碎片整理工具和完整性检查器。要查看此工具的命令行选项,请打开命令提示,将目录更改到 EXCHSRVR\BIN
ESEUTIL /?
描述:微软Exchange数据库维护工具
操作开关如下:
       碎片整理:ESEUTIL /d <database name> [options]
恢复:ESEUTIL /r [options]  bitsCN.Com
完整性:ESEUTIL /g <database name> [options]
升级:ESEUTIL /u <database name> /d<previous .DLL> [options]
文件转储:ESEUTIL /m[mode-modifier] <filename>
修复:ESEUTIL /p <database name> [options]
注意:LOG文件路径必须被明确指定。
除非使用/IS或/DS的参数选项。
1、碎片整理选项(D)
碎片整理/压缩数据库
描述:完成一个离线的数据压缩及整理
      语法:ESEUTIL /d <database name> [options]
      参数:<database name> - filename of database to compact, or one of /ispriv,  /ispub, or /ds (see NOTES below)压缩数据库的名字或是/ispriv、/ispub 、/ds参数。 bbs.bitsCN.com
选项             说明
----------------------------------------
/ds            目录
/ispriv        专用信息存储
/ispub         公用信息存储
options:  zero or more of the following switches, separated by a space:
选项:/l<path>--输入log文件的位置(缺省是当前目录)。 中国.网管联盟
      /s<path>--检测系统文件位置(缺省是当前目录)
      /b<db>--成生备份拷贝
      /t<db>--设置临时数据库名字(缺省是:TEMPDFRG.EDB)
      /p--临时数据库
      /o—隐藏logo
使用下列一个或多个选项指定要在数据库上执行的操作。
选项   说明
-----------------------------------------------------------------------
/b <path> 在指定位置生成原始的未压缩数据库的备份副本。
中国.网管联盟

/p  在原始位置保留并保存原始的未压缩数据库,并在默认文件 Exchsrvr\Bin\Tempdfrg.edb 中存储新的压缩数据库。
/t <file_name> 在指定路径中创建并重命名新的压缩数据库。
/o  不显示 Microsoft Exchange Server 横幅。
使用以下数据库开关在特定数据库上运行 Eseutil 碎片整理:
eseutil /d <database_name> [options]
碎片整理/压缩
对数据库执行脱机压缩。
语法:eseutil /d <database_name> [options]

参数:<database_name> 是要压缩的数据库的文件名。
您不必使用以下任何选项,但可以使用一个或多个选项(通过空格隔开)指定要对数据库执行的操作。
选项              说明
----------------------------------------------------------------
/b<database> 使用指定名称生成备份副本
/t<database> 设置临时数据库名称(默认名称为Tempdfrg.edb)
/s<file> 设置流文件名(默认名称为 NONE)
/f<file> 设置临时流文件名(默认名称为 Tempdfrg.stm)
/p  保留临时数据库(换句话说,不要安置)
/o  抑制徽标

/i  不要对流文件进行碎片整理
2、RECOVERY (R)
R选项
RECOVERY:
恢复:
DESCRIPTION:  Performs recovery, bringing all databases to a consistent state.
描述:数据库一致性检查
     SYNTAX:  ESEUTIL /r [options]
     语法:ESEUTIL /r [options]
options:  zero or more of the following switches, separated by a space:
参数:转换分散空间
选项              说明
----------------------------------------------------------------
/l<path> log文件的位置
/s<path> 设置流文件名(默认名称为 NONE)
/o  抑制徽标
3、INTEGRITY (G)
完整性选项(G)
INTEGRITY:
DESCRIPTION:  Verifies integrity of a database.
描述:验证数据库完整性
      SYNTAX:  ESEUTIL /g <database name> [options]
      语法:ESEUTIL /g <database name> [options]
  PARAMETERS:  <database name> - filename of database to verify, or one of

   参数:<数据库名>--验证数据库名称
选项              说明
----------------------------------------------------------------
/t<database> 设置临时数据库名称(默认名称为Integ.edb)
/v 详细模式下
/x 得到详细错误信息
/o  抑制徽标
4、升级(U)
描述:更新一个老版本的Exchange数据库到当前版本
      语法:ESEUTIL /u <database name> /d<previous .DLL> [options]

选项              说明
----------------------------------------------------------------
/b<database> 使用指定名称生成备份副本
/t<database> 设置临时数据库名称(默认名称为Tempupgd.edb)
/p  保留临时数据库(换句话说,不要安置)
/o  抑制徽标
     注意:(1)、这个工具应该仅仅被用于升级内部数据格式改变,假如必要它通常用于Exchange相同的主流版本和新版本
          (2)、更新之前,应该保证数据库良好,否则会出现错误。
          (3)、如果使用/P,原数据库文件将不改变,将会生成一个更新版本的临时数据库文件
5、FILE DUMP (M)
文件转储(M)
描述:生成不同格式的输出文件
语法:ESEUTIL /m[mode-modifier] <filename> [options]
参数:<mode-modifier>转储的类型
          H----转储数据库头(缺省情况)
          K---转储指定文件
       <filename>---转储的文件名,如果使用/mh,则filename必须是一个数据库名

6、REPAIR (P)
修复(P)
REPAIR:
DESCRIPTION:  Repairs a corrupted or damaged database.
描述:修补一个被破坏或损坏的数据库
      SYNTAX:  ESEUTIL /p <database name> [options]
      语法:ESEUTIL /p <database name> [options]
选项              说明
---------------------------------------------------------------- bitsCN.Com
/t<database> 设置临时数据库名称(默认名称为Tempdfrg.edb)
/d 不要修复数据库,只检测数据库
/v 详细模式下
/x 得到详细错误信息
/o  抑制徽标
   注意:(1)、/ispriv , /ispub和/ds将自动设置为适当的Exchange存储
三、Isinteg
Isinteg是一种实用工具,可搜索脱机信息存储区以查找完整性方面的缺陷。还可以修复 Isinteg 检测到的问题。Isinteg 在命令提示符处运行。
在命令提示符处运行 Isinteg 时,可以使用下列开关。此外,还可以显示用法(-? 开关)。isinteg [-pri] [-pub] [-fix] [-l [logfilename]]
开关                结果

------           ------
-?               显示用法。
-pri             检查专用信息存储区(默认)。
-pub             检查公用信息存储区。
-fix             修复信息存储区。 bitsCN.Com
-l [logfilename] 将日志信息存储在 logfilename 中。
                    默认为 isinteg.pri 或 isinteg.pub。
-patch           脱机备份还原修补程序。
注意:Microsoft Exchange 2000 Server 不再使用 Isinteg -patch 开关。当邮件数据库 (MDB) 启动时,会自动执行 Isinteg -patch 进程。 中国网管联盟
Exchange 2000 还具有下面的其他开关。
开关                结果
------           ------
-s               服务器名称。
在 Exchange 2000 中,必须指定运行 Isinteg 的数据库(例如,isinteg -s Server1 -test allfoldtests)。 有关此命令的 Exchange 2000 版本的其他信息,

四、Exmerge.exe
邮箱合并程序 (Exmerge.exe) 使 Exchange Server 管理员能够从 Exchange Server 计算机上的邮箱中提取数据,然后将此数据合并至另一台正在运行 Exchange Server 的计算机上的相同邮箱。此程序的 Exchange Server 4.0、5.0 和 5.5 版包括在 Microsoft BackOffice Resource Kit 第二版中。Exmerge 的 Exchange 2000 Server 版包括在 Exchange 2000 Server CD 的 Support\Utils\I386\Exmerge 文件夹中。
要运行 Exmerge 实用工具,必须将 Exmerge.exe 和 Exmerge.ini 文件从 CD 中复制到服务器硬盘上的 ExchSrvr\Bin 文件夹,然后从该位置运行 .exe 文件。Exmerge.exe 将数据从源服务器复制到个人文件夹 (PST) 文件中,然后将个人文件夹中的数据合并到目标服务器上的邮箱。
该程序具有两种操作模式:“一步”和“两步”。
在“一步”模式中,该程序将数据从源邮箱复制到 PST 文件,然后将 PST 文件中的数据合并到目标服务器上的相同邮箱。在这种情况下,目标服务器上的邮箱必须具有相同的邮箱名称和相同的容器路径。通过将源服务器上邮箱的辨别名 (DN) 中的组织和站点名称替换为目标服务器的组织和站点名称,来获取目标服务器上邮箱的 DN。

在“两步”模式中,用户只能将数据复制到 PST 文件,或将 PST 文件中的数据合并到服务器。  www.bitsCN.com
要使此程序成功运行,用户必须使用 Exchange 服务帐户登录到 Microsoft Windows NT。如果无法使用这种登录方式,则当前 Windows NT 帐户必须对所有选择以合并的邮箱具有访问权限。
该程序创建一个名为 C:\Exmerge.log 的日志文件,该文件包含在操作期间遇到的任何错误。 此程序的 Exchange Server 4.0、5.0 和 5.5 版只能在 Windows NT Server 4.0 或更高版本上运行。此程序的 Exchange 2000 Server 版只能在 Microsoft Windows 2000 Server 或更高版本上运行。  bbs.bitsCN.com
在运行此程序之前,请确保在运行 Exmerge.exe 的计算机上安装了 Microsoft Exchange Client 和 Microsoft Exchange Administrator 程序。
要启动该程序,请从 Windows NT 资源管理器中双击 Exmerge.exe 程序。
此版本的 Exmerge.exe 只能合并用户文件夹和邮件。它不支持收件箱规则、窗体和 Schedule+ 数据。Exmerge.exe 合并 Outlook 日历和联系人。
被复制的邮件将失去它们的单个实例存储,这可能导致 Exchange 专用信息存储的大小显著增加。  
要在信息存储不启动时使用 Exmerge.exe,请执行下列步骤:  bbs.bitsCN.com
注意:假定生产服务器名为 SERVERP,另一个测试服务器名为 SERVERT。 1. 通过移出 Exchsrvr\Mdbdata 目录中的所有文件,在 SERVERP 上创建新的(空白)信息存储。这将使信息存储服务可以启动。
2. 将旧的信息存储还原或恢复到 SERVERT 上。
3. 停止 SERVERP 上的信息存储服务。
4. 停止 SERVERT 上的信息存储服务。
5. 在 SERVERT 上,将 Exchsrvr\Mdbdata 目录重命名为 Mdbdata.old。
6. 在 SERVERT 上,创建一个名为 Exchsrvr\Mdbdata 的新目录。
7. 在 SERVERP 上,将 Exchsrvr\Mdbdata 目录重命名为 Mdbdata.new。

8. 在 SERVERP 上,创建一个名为 Exchsrvr\Mdbdata 的新目录。
Array. 从 SERVERP 上的 Exchsrvr\Mdbdata.new 目录中,将 Priv.edb 和 Pub.edb 文件复制到 SERVERT 上的 Exchsrvr\Mdbdata 目录。
10. 从 SERVERT 上的 Exchsrvr\Mdbdata.old 目录中,将 Priv.edb 和 Pub.edb 文件复制到 SERVERP 上的 Exchsrvr\Mdbdata 目录。由此,您就在两个服务器上交换了 Priv.edb 和 Pub.edb 文件。
11. 在 SERVERP 上运行 Isinteg -patch。



12. 在 SERVERT 上运行 Isinteg -patch。
13. 运行 Exmerge 程序,以便立即将所有数据从 SERVERT 合并到 SERVERP。
如果在服务器上获取邮箱时出现问题,请执行下列操作: 1. 检查服务器名称。
2. 检查组织和站点名称。
3. 验证服务器上正在运行目录和信息存储。Exmerge 程序将从信息存储中获取邮箱的列表,因为它还获取邮箱大小。
4. 有时,显示的列表可能不包含 Exchange Server 计算机上的所有邮箱。从未登录过的邮箱没有信息存储对象。因此,不检测这些邮箱。当您查看专用信息存储的邮箱资源时,Exchange Server Administrator 程序中也会出现这一现象。避免此问题的方法是登录到 Exchange 客户端,并将电子邮件发送到该服务器上的所有邮箱。这可以在信息存储中为所有邮箱创建邮箱对象。(此步骤适用于 Exchange 4.0、5.0、5.5,但不适用于 Exchange 2000) www_bitscn_com
错误信息
在 Exmerge.log 中可能记录以下错误信息:
Error configuring message service (MSEMS)
如果信息存储中存在的邮箱对象没有相应的目录对象,可能会生成此错误信息。
检查 Administrator 程序中专用信息存储的邮箱资源页,然后验证对于“邮箱资源”中列出的邮箱都存在目录对象。目录对象可以手动创建,或通过使用 DS/IS 调整来创建。
注意:请在运行 DS/IS 调整之前确保您理解运行它的含意。
还可能报告以下错误:
Error opening message store (MSEMS).Verify you have the correct permissions to log on.
请确保您登录 Windows NT 时所使用的帐户有权访问您正在试图使用 Exmerge.exe 访问的邮箱。使用 Exchange 服务帐户登录 Windows NT 可能最容易。

如果出现以下错误信息:
Error creating Message Service (MSPST MS)
请确保在运行 Exmerge.exe 的计算机上安装了 Exchange 客户端。
使用 Exmerge 实用工具移动用户的邮箱之后,所有使用脱机存储 (OST) 的用户都必须完全同步所有文件夹。如果邮箱内容出于某种原因缺少或已丢失,可能必须从 OST 还原邮件。这需要将个人文件夹 (PST) 添加到配置文件,启动客户端脱机,将邮件从 OST 手动移动到 PST,然后重新移回邮箱。
分享到
快速回复
限60 字节
 
上一个 下一个