恢复 Exchange 服务器

可以通过在无人参与模式下使用 /Mode:RecoverServer 开关从 Exchange 安装程序的命令行) (来恢复丢失的 Exchange 服务器。 由于大多数 Exchange 服务器设置都存储在 Active Directory 中,所以在 Setup.exe /Mode:RecoverServer 具有相同名称的新服务器上安装 Exchange 期间,该命令会使用该信息。

恢复丢失的 Exchange 服务器通常是通过使用新硬件完成的。 但是,也可以使用尚未安装 Exchange 的现有服务器。

本主题说明如何恢复丢失的 Exchange 服务器,该服务器不是数据库可用性组的成员 (DAG) 。 有关恢复 DAG 成员服务器的详细步骤,请参阅恢复数据库可用性组成员服务器

是否要查找与备份和还原数据相关的其他管理任务? 请查看备份、还原和灾难恢复

开始前,有必要了解什么?

  • 估计完成时间:20 分钟

  • 用于执行服务器恢复的帐户需要以下权限:

    • 域管理员安全组成员身份。

    • Exchange 组织管理角色组成员身份。

  • 如果 Exchange 安装在默认位置 %ProgramFiles%\Microsoft\Exchange Server\V15 以外的位置,则必须在 命令中包含 Setup.exe /Mode:RecoverServer/TargetDir:<Path> 开关,以指定 Exchange 程序 (二进制) 文件的位置。 如果不使用 /TargetDir 开关,则恢复 Exchange 服务器时,Exchange 文件将安装在默认位置。

    若要在丢失的 Exchange 服务器上查找 Exchange 的安装位置,请执行以下步骤:

    1. 打开 ADSIEDIT.MSC 或 LDP.EXE。

    2. 转到 CN=ExServerName,CN=Servers,CN=First Management Group,CN=管理组,CN=ExOrg Name,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=DomainName,CN=Com

    3. Right-click the Exchange server object, and then click Properties.

    4. 查找 msExchInstallPath 属性。 This attribute stores the current installation path.

  • 如果没有要恢复的服务器上安装的累积更新 (CU) 版本的安装媒体,则可以使用最新的可用累积更新来恢复服务器。 只有最后两个库可供下载。 有关详细信息,请参阅Exchange Server汇报。 升级成功后,恢复服务器上的 EMS 中的 AdminDisplayVersion 或 msExchVersion 属性将显示旧的内部版本号,这在本质上是一种修饰。 我们可以运行安装程序 /m:upgrade /IAcceptEchangeServerLicenseTerms 或等待下一个累积更新版本,然后执行升级以更正此问题。

  • 目标服务器必须使用与丢失的服务器相同的 Windows Server 版本。 例如,无法恢复在运行 Windows 2016 的新服务器上运行 Windows 2012 R2 的丢失 Exchange 2016 服务器,反之亦然。

  • 目标服务器上也必须存在用于丢失服务器上已装载数据库的相同磁盘驱动器号。

  • 目标服务器应具有与丢失的服务器相同的常规性能特征和硬件配置。

  • /Mode:RecoverServer 开关将自签名证书分配给需要 SSL/TLS 的所有 Exchange 服务。 如果服务器以前使用了由其他证书颁发机构颁发的 SSL/TLS 证书,则需要重新导入证书并将服务配置为使用该证书。 否则,当用户尝试连接 ((例如,在 Outlook) 中)时,会收到证书提示。

提示

是否有任何疑问? 在 Exchange 论坛中寻求帮助。 访问 Exchange Server 的论坛。

恢复丢失的 Exchange 服务器

  1. 重置丢失的服务器的计算机帐户。 有关详细步骤,请参阅重置计算机帐户

  2. 安装正确的操作系统,并采用与丢失服务器相同的名称命名新的服务器。 如果目标 Windows 服务器与丢失的 Exchange 服务器的名称不同,则恢复不会成功。

  3. 将该服务器加入与丢失服务器相同的域中。

  4. 在目标服务器上安装必要的必备组件和操作系统组件。 有关详细信息,请参阅Exchange Server系统要求

  5. 在目标服务器上,打开文件资源管理器,右键单击下载的 Exchange ISO 映像文件,然后选择“装载”。 请注意分配的虚拟 DVD 驱动器号。

  6. 打开 Windows 命令提示符窗口。 例如:

    • 同时按 Windows 键和 R 键打开“运行”对话框,键入“cmd.exe”,然后按“确定”

    • Press Start. In the Search box, type Command Prompt, then in the list of results, select Command Prompt.

  7. 在“命令提示符”窗口中,使用以下语法:

    注意

    • 以前的 /IAcceptExchangeServerLicenseTerms 开关从 2016 Exchange Server 开始和 2019 年 9 月Exchange Server 2021 年 9 月累积汇报 (库) 不起作用。 现在必须使用/IAcceptExchangeServerLicenseTerms_DiagnosticDataON/IAcceptExchangeServerLicenseTerms_DiagnosticDataOFF进行无人参与和脚本安装。

    • 以下示例使用/IAcceptExchangeServerLicenseTerms_DiagnosticDataON开关。 由你将开关更改为/IAcceptExchangeServerLicenseTerms_DiagnosticDataOFF

    <Virtual DVD drive letter>:\Setup.exe /IAcceptExchangeServerLicenseTerms_DiagnosticDataON /Mode:RecoverServer [/TargetDir:<Path>] [/DomainController:<ServerNameOrFQDN>] [/DoNotStartTransport] [/EnableErrorReporting]
    

    此示例使用驱动器 E: 上的 Exchange 安装文件在默认位置 (%ProgramFiles%\Microsoft\Exchange Server\V15) 并恢复 Exchange 服务器。

    E:\Setup.exe /IAcceptExchangeServerLicenseTerms_DiagnosticDataON /Mode:RecoverServer
    

    此示例相同,但需要 Exchange 程序文件的自定义位置才能匹配丢失服务器上的位置。

    E:\Setup.exe /IAcceptExchangeServerLicenseTerms_DiagnosticDataON /Mode:RecoverServer /TargetDir:"D:\Program Files\Exchange"
    

    有关可选开关的详细信息,请参阅 在 Exchange 安装程序中使用无人参与模式

  8. 安装完成后,但在将恢复的服务器投入生产之前,请重新配置服务器上以前存在的任何自定义设置,然后重启服务器。

如何知道操作成功?

成功完成的安装程序将成为主指示器,这表示恢复成功。 若要进一步验证是否已成功恢复丢失的服务器,请打开 Windows 服务工具 (services.msc) 并验证 Microsoft Exchange 服务是否已安装并正在运行。

脚本代理的可能问题

如果以前在 Exchange 组织中启用了脚本代理,则恢复过程可能会失败。 错误将如下所示:

"Initialization failed: '"Scripting Agent initialization failed: "File is not found: 'C:\Program Files\Microsoft\Exchange Server\V15\Bin\CmdletExtensionAgents\ScriptingAgentConfig.xml'.""' ---> Microsoft.Exchange.Provisioning.ProvisioningException: "Scripting Agent initialization failed: "File is not found: 'C:\Program Files\Microsoft\Exchange Server\V15\Bin\CmdletExtensionAgents\ScriptingAgentConfig.xml'."" ---> System.IO.FileNotFoundException: "File is not found: 'C:\Program Files\Microsoft\Exchange Server\V15\Bin\CmdletExtensionAgents\ScriptingAgentConfig.xml'."

如果组织中还有其他 Exchange 服务器,则需要:

  1. 在现有服务器上的 Exchange 命令行管理程序中禁用脚本代理:

    Disable-CmdletExtensionAgent -Identity "Scripting Agent"
    
  2. 如本主题前面所述,在恢复模式下运行 Exchange 安装程序。

  3. Exchange 服务器恢复完成后,在 Exchange 命令行管理程序中启用脚本代理:

    Enable-CmdletExtensionAgent -Identity "Scripting Agent"
    

如果恢复的 Exchange 服务器是组织中唯一的 Exchange 服务器,则需要:

  1. 重命名文件 %ExchangeInstallPath%Bin\CmdletExtensionAgents\ScriptingAgentConfig。xml.sample 到 %ExchangeInstallPath%Bin\CmdletExtensionAgents\ScriptingAgentConfig。xml

    %ExchangeInstallationPath% 的默认值为 %ProgramFiles%\Microsoft\Exchange Server\V15,但实际值是服务器上安装 Exchange 的任何位置。

  2. 如本主题前面所述,在恢复模式下重新运行 Exchange 安装程序。