共用方式為


變更佇列資料庫在 Exchange Server 中的位置

適用於:是-img-16 2016是-img-192019 是-img-se訂閱版本

Exchange Server 使用可延伸儲存引擎 (ESE) 資料庫來儲存佇列訊息。 所有不同的佇列都是儲存在單一 ESE 資料庫中。 佇列 存在於 Exchange 信箱伺服器和 Edge Transport Server 上。 如需佇列的詳細資訊,請參閱佇列中的 佇列 和訊息

XML 應用程式組態檔中的 %ExchangeInstallPath%Bin\EdgeTransport.exe.config 索引鍵會控制佇列資料庫和佇列資料庫事務歷史記錄的位置。 此檔案會與 Exchange Transport 服務產生關聯。 下列清單會更詳細地說明每個金鑰。

  • QueueDatabasePath:指定佇列資料庫檔案的位置。 檔案如下:

    • Trn.log
    • Trntmp.log

    預設位置是 %ExchangeInstallPath%TransportRoles\data\Queue

  • QueueDatabaseLoggingPath:指定佇列資料庫事務歷史記錄檔的位置。 檔案如下:

    • Trn nnn.log
    • Trnres00001.jrs
    • Trnres00002.jrs
    • Temp.edb:此檔案會在 Exchange Transport Service 啟動時驗證佇列資料庫架構。 Temp.edb 雖然不是交易記錄檔,但仍會與交易記錄檔存放在相同的位置上。

    預設位置是 %ExchangeInstallPath%TransportRoles\data\Queue

開始之前有哪些須知?

  • 預估完成時間:15 分鐘。

  • Exchange 許可權不適用於本文中的程式。 這些程序是在 Exchange 伺服器的作業系統中加以執行。

  • 停止或重新啟動 Exchange Transport 服務時,系統會中斷該伺服器上的郵件流程。

  • 當您變更佇列資料庫或事務歷史記錄的位置時,不會移動現有的佇列資料庫和事務歷史記錄檔。 新的佇列資料庫和新的事務歷史記錄會在新的位置建立。 舊檔案會保留在舊的位置,但不再使用。 如果您想要在新位置重複使用舊的佇列資料庫或事務歷史記錄檔,則必須在 Exchange Transport 服務停止時,將檔案移至新位置。

  • 佇列資料庫與交易記錄的資料夾需要下列權限:

    • 網路服務:完全控制

    • 系統:完全控制

    • 系統管理員:完全控制

      如果資料夾不存在,但父資料夾有這些權限,則新資料夾會自動建立。

  • 任何自定義 Exchange 或因特網資訊伺服器 (IIS) 設定,例如,當您安裝 Exchange 累積更新 (CU) 時,會 覆寫 您在 Exchange Server (上 Exchange XML 應用程式組態檔中所做的 web.config 檔案或 EdgeTransport.exe.config 檔案) 。 請務必儲存此資訊,以便在安裝之後輕鬆地重新套用設定。 安裝 Exchange CU 之後,您必須重新設定這些設定。

  • 如需本文中可能套用至程序的鍵盤快捷方式相關信息,請參閱 Exchange 系統管理中心的鍵盤快捷方式

提示

有問題嗎? 在 Exchange 的 Exchange Server 論壇中尋求協助 |Exchange Server |管理

使用命令提示字元在新位置上建立新的佇列資料庫與交易記錄

  1. 建立用以保存佇列資料庫與交易記錄的資料夾。 確認資料夾所套用的權限正確無誤。

  2. 在 [命令提示字元] 視窗中執行下列命令,即可在記事本中開啟 EdgeTransport.exe.config 檔案:

    Notepad %ExchangeInstallPath%Bin\EdgeTransport.exe.config
    
  3. 在區段中 <appSettings> 尋找並修改下列索引鍵。

    <add key="QueueDatabasePath" value="<LocalPath>" />
    <add key="QueueDatabaseLoggingPath" value="<LocalPath>" />
    

    例如,若要在 D:\Queue\QueueDB 中建立新佇列資料庫與交易記錄,請使用下列值:

    <add key="QueueDatabasePath" value="D:\Queue\QueueDB" />
    <add key="QueueDatabaseLoggingPath" value="D:\Queue\QueueDB" />
    

    完成後,儲存並關閉 EdgeTransport.exe.config 檔案。

  4. 執行下列命令,重新啟動 Exchange Transport 服務:

    net stop MSExchangeTransport && net start MSExchangeTransport
    

如何知道您已在新位置成功建立新的佇列資料庫和新的事務歷史記錄?

若要確認您已成功在新位置建立新的佇列資料庫和新的事務歷史記錄,請執行下列步驟:

  1. 確認新的 Mail.que 與 Trn.chk 資料庫檔案已位於新位置上。

  2. 確認新的事務歷史記錄檔 Trn.logTrntmp.logTrnres00001.jrsTrnres00002.jrsTemp.edb 檔案存在於新的位置。

  3. 如果您可以在 Exchange Transport Service 啟動之後,從舊位置刪除舊的佇列資料庫和事務歷史記錄檔,就不會再使用舊的佇列資料庫。

使用命令提示字元將現有的佇列資料庫與交易記錄移至新位置

注意事項

資料夾中%ExchangeInstallPath%Scripts還有名為 Move-TransportDatabase.ps1 的腳本,可移動佇列資料庫和事務歷史記錄。 您需要指定下列參數: queueDatabasePathqueueDatabaseLoggingPathiPFilterDatabasePathiPFilterDatabaseLoggingPathtemporaryStoragePath

雖然您需要移動現有的佇列資料庫來保留其中任何未傳遞的訊息,但通常不需要移動現有的事務歷史記錄,因為:

  • Exchange Transport 服務的正常關閉程序,會將所有尚未認可的交易記錄項目寫入佇列資料庫中。

  • 亦會使用循環記錄,因此若交易記錄內含先前認可的資料庫變更,則不會保留。

  1. 建立用以保存佇列資料庫與交易記錄的資料夾。 確認資料夾所套用的權限正確無誤。

  2. 在 [命令提示字元] 視窗中執行下列命令,即可在記事本中開啟 EdgeTransport.exe.config 檔案:

    Notepad %ExchangeInstallPath%Bin\EdgeTransport.exe.config
    
  3. 在區段尋找 <appSettings> 並修改下列索引鍵:

    <add key="QueueDatabasePath" value="<LocalPath>" />
    <add key="QueueDatabaseLoggingPath" value="<LocalPath>" />
    

    例如,若要將佇列資料庫和交易記錄的位置變更為 D:\Queue\QueueDB,請使用下列值:

    <add key="QueueDatabasePath" value="D:\Queue\QueueDB" />
    <add key="QueueDatabaseLoggingPath" value="D:\Queue\QueueDB" />
    

    完成後,儲存並關閉 EdgeTransport.exe.config 檔案。

  4. 執行下列命令,停止 Exchange Transport 服務:

    net stop MSExchangeTransport
    
  5. 將現有的資料庫檔案 Mail.queTrn.chk 從舊位置移至新位置。

  6. 將現有的事務歷史記錄檔 Trn.logTrntmp.logTrn nnnnn.logTrnres00001.jrsTrnres00002.jrsTemp.edb 從舊位置移至新位置。

  7. 執行下列命令,啟動 Exchange Transport 服務:

    net start MSExchangeTransport
    

如何知道您已成功將現有的佇列資料庫和事務歷史記錄移至新位置?

若要確認您已成功將現有的佇列資料庫和事務歷史記錄移至新位置,請執行下列步驟:

  1. 確認佇列資料庫檔案 Mail.queTrn.chk 存在於新的位置。

  2. 確認事務歷史記錄檔 Trn.logTrntmp.logTrnres00001.jrsTrnres00002.jrsTemp.edb 檔案存在於新的位置。

  3. 確認舊位置中已無任何佇列資料庫或交易記錄檔。