共用方式為


佇列中訊息的程式

在 Exchange Server 中,您可以使用 Exchange 工具箱或 Exchange 管理命令介面中的佇列查看器來管理佇列中的訊息。 如需佇列中訊息的詳細資訊,請參閱 訊息屬性

本主題描述如何對佇列中的訊息執行下列程式:

  • 拿掉訊息:您可以從佇列中移除訊息,而不需要傳送未傳遞的報表給發件者 (也稱為 NDR、傳遞狀態通知、DSN 或退回的訊息) 。
  • 暫止訊息:當您暫停訊息時,會防止訊息傳遞。 在您繼續訊息之前,訊息不會離開佇列。
  • 繼續訊息:您可以繼續目前狀態為 Suspended 的訊息。 繼續郵件,表示進行傳遞郵件。
  • 重新導向郵件:您可以清空信箱伺服器上所有傳遞佇列的訊息,並將這些訊息傳輸到另一部信箱伺服器。

如需從佇列匯出訊息的相關信息,請參閱 從佇列導出訊息

開始之前有哪些須知?

  • 每項程序的預估完成時間:5 分鐘

  • 若要尋找並開啟 Exchange 工具箱,請使用下列其中一個程式:

    • Windows 10:按兩下 [ 啟動>所有應用程式>Microsoft Exchange Server <版本>>Exchange 工具箱]

    • Windows Server 2012 R2 或 Windows 8.1:在 [開始] 畫面上,按兩下靠近左下角的向下箭號或從畫面中間向上撥動,開啟 [應用程式] 檢視。 Exchange 工具箱快捷方式位於名為 Microsoft Exchange Server <版本>] 的群組中。

    • Windows Server 2012:使用下列任何方法:

      • 在 [開始] 畫面上,按一下空白區域,然後輸入 Exchange 工具箱。
      • 在桌面或 [開始] 畫面上,按 Windows 鍵 + Q。在 [搜尋] 快速鍵中,輸入 Exchange 工具箱。
      • 在桌面或 [開始] 畫面上,將游標移到右上角,或從畫面的右緣向左撥動以顯示快速鍵。 按一下 [搜尋] 快速鍵,然後輸入 Exchange 工具箱。

      當捷徑出現在結果中時,您可以選取它。

  • 若要了解如何在內部部署 Exchange 組織中開啟 Exchange 管理命令介面,請參閱 Open the Exchange Management Shell

  • 如需在 Exchange 管理命令介面中使用篩選和識別值的詳細資訊,請參閱 在 Exchange 管理命令介面的佇列中尋找佇列和訊息

  • 您必須已獲指派權限,才能執行此程序或這些程序。 若要查看您需要的權限,請參閱 郵件流程權限主題中的「佇列」項目。

  • 如需適用於此主題中程序的快速鍵相關資訊,請參閱 Exchange 系統管理中心的鍵盤快速鍵

提示

有問題嗎? 在 Exchange 論壇中尋求協助。 此論壇的網址為:Exchange ServerExchange OnlineExchange Online Protection

移除佇列中的郵件

注意事項

要傳送給多位收件者的郵件可能會存放在多個佇列中。 若要在單一作業中移除來自多個佇列中的訊息,您必須使用篩選器。 如需詳細資訊,請參閱 佇列中的訊息 屬性和 訊息篩選參數

使用佇列查看器從佇列中移除訊息

  1. [Exchange 工具箱] 的 [ 郵件流程工具] 區段中,按兩下 [佇列查看器 ] 以在新視窗中開啟工具。

  2. 在 [佇列查看器] 中,按兩下 [ 訊息] 索引標籤 。隨即顯示您所連線之伺服器上所有訊息的清單。 若要將動作調整為單一佇列,請按兩下 [ 佇列] 索引 標籤,按兩下佇列名稱,然後按兩下出現的 [ 伺服器\佇列 ] 索引標籤。

  3. Select one or more messages from the list, right-click, and then select Remove Messages (with NDR) or Remove Messages (without NDR). 對話框隨即出現,確認選取的動作,並顯示 [ 您要繼續嗎?]。 按一下 [是]

  4. 若要從特定佇列移除所有訊息,請按下 [ 佇列] 索引標籤 。選取佇列,按鼠右鍵,然後選取 [ 移除具有 NDR 的訊息 () 移除不含 NDR 的訊息 () 。 對話框隨即出現,確認選取的動作,並顯示 [ 您要繼續嗎?]。 按一下 [是]

    注意事項

    若您使用的是篩選過的清單,則所顯示的頁面可能不會包括篩選器中的所有項目。 在這種情況下會出現下列提示: 此動作將影響這個頁面上的所有項目。若要擴充此動作的範圍以納入此篩選中所有的項目,請先核取下列方塊,然後按一下 [確定]。

使用 Exchange 管理命令介面移除訊息

若要從佇列移除郵件,請使用下列語法。

Remove-Message <-Identity MessageIdentity | -Filter "MessageFilter"> -WithNDR <$true | $false>

此範例會移除佇列中主旨為「Win Big」的郵件,但不傳送 NDR。

Remove-Message -Filter "Subject -eq 'Win Big'" -WithNDR $false

本範例會從名為 Mailbox01 的伺服器上無法連線的佇列中移除訊息識別碼為 3 的訊息,並傳送 NDR。

Remove-Message -Identity Mailbox01\Unreachable\3 -WithNDR $true

如需詳細資訊,請參閱 Remove-Message

如何知道這是否正常運作?

若要確認您已成功從佇列中移除訊息,請使用下列其中一個程式:

  • 在佇列檢視器中,選取佇列或建立篩選器,確認郵件已不再存在。

  • 在 Exchange 管理命令介面中,將 MessageFilter 取代為您使用的篩選條件,或 <將 QueueIdentity> 取代為佇列的身分識別,然後執行下列其中一個命令來確認訊息已不存在:

    Get-Message -Filter "MessageFilter"
    

    Get-Message -Queue <QueueIdentity>
    

    如需詳細資訊,請參閱 Get-Message

擱置佇列中的郵件

附註

  • 要傳送給多位收件者的郵件可能會存放在多個佇列中。 若要在單一作業中擱置位於多個佇列中的郵件,您必須使用篩選器。 如需詳細資訊,請參閱 佇列中的訊息 屬性和 訊息篩選參數

  • 如果您暫止正在傳輸至下一個躍點的訊息,訊息的傳遞將會繼續,而訊息狀態會是 PendingSuspend。 如果傳遞失敗,訊息會重新進入佇列,然後訊息將會暫停。

使用佇列查看器暫停訊息

  1. [Exchange 工具箱] 的 [ 郵件流程工具] 區段中,按兩下 [佇列查看器 ] 以在新視窗中開啟工具。

  2. 在 [佇列查看器] 中,按兩下 [ 訊息] 索引標籤 。隨即顯示您所連線之伺服器上所有訊息的清單。 若要將檢視限制為單一佇列,請按兩下 [ 佇列] 索引 標籤,按兩下佇列名稱,然後按兩下出現的 [ 伺服器\佇列 ] 索引標籤。

  3. Select one or more messages, right-click, and then select Suspend.

使用 Exchange 管理命令介面暫停訊息

若要擱置郵件,請使用下列語法:

Suspend-Message <-Identity MessageIdentity | -Filter "MessageFilter">

本範例會在名為Mailbox01的伺服器上,將訊息標識碼為3的訊息暫止在無法連線的佇列中。

Suspend-Message -Identity Mailbox01\Unreachable\3

本範例會暫停本地伺服器上所有佇列中來自網域中任何發件者的所有訊息 contoso.com。

Suspend-Message -Filter "FromAddress -like '*contoso.com'"

本範例會針對名為Mailbox01之伺服器上的 contoso.com,暫停傳遞佇列中的所有訊息。

Get-Queue Mailbox01\contoso.com | Get-Message | Suspend-Message

此範例會暫停本地伺服器上所有佇列中的所有訊息。

Get-Queue | Get-Message | Suspend-Message

如需詳細資訊,請 參閱 Suspend-Message

如何知道這是否正常運作?

若要確認您已成功暫停佇列中的訊息,請使用下列其中一個程式:

  • 在佇列檢視器中,選取佇列或建立篩選器,確認郵件已擱置。

  • 在 Exchange 管理命令介面中,將 MessageFilter 取代為您使用的篩選條件,或 <以佇列的身分識別取代 QueueIdentity> ,然後執行下列其中一個命令來確認訊息已暫停:

    Get-Message -Filter "MessageFilter"
    

    Get-Message -Queue <QueueIdentity>
    

    如需詳細資訊,請參閱 Get-Message

移除佇列中的郵件

附註

  • 您只能繼續狀態為 Suspended 的訊息。
  • 保留訊息的佇列狀態會影響訊息的傳遞。 例如,如果您在狀態為 Suspended 的佇列中繼續暫止的訊息,則在您繼續佇列之前,將無法傳遞訊息。 如需繼續佇列的詳細資訊,請參閱 繼續佇列

使用佇列查看器繼續訊息

  1. [Exchange 工具箱] 的 [ 郵件流程工具] 區段中,按兩下 [佇列查看器 ] 以在新視窗中開啟工具。

  2. 在 [佇列查看器] 中,按兩下 [ 訊息] 索引標籤 。隨即顯示您所連線之伺服器上所有訊息的清單。 若要調整動作以專注於單一佇列,請按兩下 [ 佇列 ] 索引標籤,按兩下佇列名稱,然後按兩下出現的 [ 伺服器\佇列 ] 索引標籤。

  3. Click Create Filter, and enter your filter expression as follows:

    1. Select Status from the message property drop-down list.
    2. Select Equals from the comparison operator drop-down list.
    3. 從值下拉式清單中選取 [已擱置]
  4. Click Apply Filter. All messages that have a status of Suspended are displayed.

  5. Select one or more messages from the list, right-click, and select Resume.

使用 Exchange 管理命令介面繼續訊息

若要繼續傳送郵件,請使用下列語法:

Resume-Message <-Identity MessageIdentity | -Filter "MessageFilter">

本範例會繼續從 contoso.com 網域中的任何寄件者傳送的所有訊息。

Resume-Message -Filter "FromAddress -like '*contoso.com'"

本範例會繼續名為Mailbox01之伺服器上無法連線佇列中訊息標識碼為3的訊息。

Resume-Message -Identity Mailbox01\Unreachable\3

如何知道這是否正常運作?

若要確認您已成功繼續佇列中的訊息,請使用下列其中一個程式:

  • 在 [佇列查看器] 中,選取佇列或建立篩選條件,以確認訊息不再暫停。

  • 在 Exchange 管理命令介面中,將 MessageFilter 取代為您使用的篩選條件,或 <以佇列的身分識別取代 QueueIdentity> ,然後執行下列其中一個命令來確認訊息不再暫停:

    Get-Message -Filter "MessageFilter"
    

    Get-Message -Queue <QueueIdentity>
    

    如需詳細資訊,請參閱 Get-Message

如果您在伺服器上的任何佇列中找不到訊息,這可能表示訊息已成功傳遞至下一個躍點。

重新導向佇列中的訊息

重新導向訊息會從來源信箱伺服器上的傳遞佇列中清空所有作用中的訊息,並將其路由傳送至目標信箱伺服器。 訊息會排入佇列以進行傳遞,並路由傳送至下一個躍點。

附註

  • 只會重新導向作用中的訊息。
  • 不會重新導向有害消息佇列中的陰影佇列和訊息。
  • 重新導向郵件時,來源信箱伺服器不接受新的訊息。
  • 您只能使用 Exchange 管理命令介面來重新導向訊息。

使用 Exchange 管理命令介面重新導向訊息

若要重新導向訊息,請使用下列語法:

Redirect-Message -Server <ServerIdentity> -Target <ServerFQDN>

本範例會將Mailbox01伺服器上所有傳遞佇列的訊息重新導向至名為 Mailbox02.contoso.com 的伺服器。

Redirect-Message -Server Mailbox01 -Target Mailbox02.contoso.com

如需詳細資訊,請 參閱 Redirect-Message

如何知道這是否正常運作?

若要確認您已成功重新導向佇列中的訊息,請使用下列其中一個程式:

  • 在佇列查看器中,確認來源伺服器上傳遞佇列上的 訊息計數 值是空的或減少的。

  • 在 Exchange 管理命令介面中,執行下列命令來確認來源伺服器上傳遞佇列的 MessageCount 屬性值是遞減或空白。

    Get-Queue