如何重新提交队列中的邮件

 

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

上一次修改主题: 2007-01-02

本主题说明如何使用 Exchange 管理控制台或 Exchange 命令行管理程序手动将邮件重新提交到提交队列,以便分类程序重新处理。在运行 Microsoft Exchange Server 2007 并且安装了集线器传输服务器角色或边缘传输服务器角色的计算机上,可以手动重新提交处于以下状态的邮件:

  • 处于“重试”状态的邮箱传递队列或远程传递队列。队列中的邮件不得处于“挂起”状态。

  • 在“无法到达”队列中但状态不是“已挂起”的邮件。

  • 带毒邮件队列中的邮件。

可以使用下列方法手动重新提交邮件:

  • 可以使用带有 Resubmit 参数的 Retry-Queue cmdlet。

  • 可以将邮件导出到 .eml 邮件文件,并使用重播目录重新提交它们。有关此重新提交方法的详细信息,请参阅如何导出并重新提交邮件

  • 可以使用队列查看器或 Resume-Message cmdlet 重新提交带毒邮件队列中的邮件。不能使用带有 Resubmit 参数的 Retry-Queue cmdlet 重新提交带毒邮件队列。有关详细信息,请参阅如何恢复邮件

开始之前

若要执行下列步骤,必须为您使用的帐户委派以下角色:

  • Exchange Server 管理员角色和目标服务器的本地 Administrators 组

若要在已安装边缘传输服务器角色的计算机上执行以下步骤,必须以该计算机上的本地 Administrators 组成员身份进行登录。

有关权限、角色委派以及管理 Exchange Server 2007 所需权限的详细信息,请参阅权限注意事项

使用带有 Resubmit 参数的 Retry-Queue Cmdlet

使用带有 Resubmit 参数的 Retry-Queue cmdlet,可以通过分类处理强制将邮件重新提交回去,以重新尝试传递。

使用不带 Resubmit 参数的 Retry-Queue cmdlet,可以强制传递队列立即尝试连接到下一跃点。邮件不会通过分类过程重新提交回去。有关如何重新尝试连接传递队列的信息,请参阅如何重试队列

重新提交特定邮箱传递队列或远程传递队列中的所有邮件

使用 Exchange 命令行管理程序重新提交特定邮箱传递队列或远程传递队列中的所有邮件

  • 运行以下命令:

    Retry-Queue -Identity "<ServerName>\<Destination>" -Resubmit $True
    

    例如,若要重新提交服务器 Exchange01 上的远程传递队列“Contoso.com”中的所有邮件,请运行以下命令:

    Retry-Queue -Identity "Exchange01\Contoso.com" -Resubmit $True
    

重新提交所有邮箱传递队列或远程传递队列中状态为“重试”的所有邮件

使用 Exchange 命令行管理程序重新提交所有邮箱传递队列或远程传递队列中状态为“重试”的所有邮件

  • 运行以下命令:

    Retry-Queue -Filter {Status -eq "Retry"} -Server "<ServerName>" -Resubmit $True
    

    例如,若要重新提交服务器 Exchange01 上的所有远程传递队列中状态为“重试”的所有邮件,请运行以下命令:

    Retry-Queue -Filter {Status -eq "Retry"} -Server "Exchange01" -Resubmit $True
    

重新提交“无法到达”队列中的所有邮件

使用 Exchange 命令行管理程序重新提交“无法到达”队列中的所有需要传递的邮件

  • 运行以下命令:

    Retry-Queue -Identity "<ServerName>\Unreachable" -Resubmit $True
    

    例如,若要尝试传递服务器 Exchange01 上的“无法到达”队列中的所有邮件,请运行以下命令:

    Retry-Queue -Identity "Exchange01\Unreachable" -Resubmit $True
    

有关语法和参数的详细信息,请参阅 Retry-Queue

恢复带毒邮件队列中的邮件

必须通过恢复带毒邮件队列中的邮件才能重新提交这些邮件。不能使用带有 Resubmit 参数的 Retry-Queue 重新提交带毒邮件队列。若要恢复带毒邮件队列中的邮件,可以使用队列查看器或 Resume-Message cmdlet。

note注意:
带毒邮件队列包含在服务器故障后被确定为对 Exchange 2007 系统有害的邮件。这些邮件的内容或格式可能真的有害。另外,这些邮件也可能是受编写较差的代理所累,这种代理在 Exchange 服务器处理这些假定有害的邮件时,会使该服务器崩溃。如果不能确定带毒邮件队列中的邮件是否安全,应该将它们导出到文件,以便进行检查。仅当带毒邮件队列中包含邮件时,才可以在队列查看器中看到该带毒邮件队列。

使用队列查看器恢复带毒邮件队列中的邮件的步骤

  1. 打开 Exchange 管理控制台。

  2. 在控制台树中,单击“工具箱”。

  3. 在结果窗格中,单击“Exchange 队列查看器”。

  4. 在操作窗格中,单击“打开工具”。

  5. 在“队列查看器”中,单击“队列”选项卡。将显示当前所连接的服务器上所有队列的列表。

  6. 单击带毒邮件队列。在操作窗格中,选择“查看邮件”。

  7. 从列表中选择一个或多个邮件,单击鼠标右键,然后选择“恢复”。

使用 Exchange 命令行管理程序恢复带毒邮件队列中的邮件

  1. 必须先确定带毒邮件队列中的邮件的标识之后,才能恢复这些邮件。若要确定带毒邮件队列中所有邮件的标识,请运行以下命令:

    Get-Message -Queue "Poison" | ft Identity
    
  2. 若要恢复带毒邮件队列中的邮件,请使用在上一步中获得的邮件标识,然后运行以下命令:

    Resume-Message <IdentityofPoisonMessage>
    

    例如,若要恢复带毒邮件队列中邮件标识值为 222 的邮件,请运行以下命令:

    Resume-Message 222
    

有关语法和参数的详细信息,请参阅 Resume-Message

详细信息

有关详细信息,请参阅管理队列