變更佇列資料庫在 Exchange Server 中的位置
Exchange Server使用可延伸儲存引擎 (ESE) 資料庫來儲存佇列訊息。 所有不同的佇列都是儲存在單一 ESE 資料庫中。 佇列存在於 Exchange 信箱伺服器和 Edge Transport Server 上。 如需佇列的詳細資訊,請參閱 佇列中的佇列和訊息。
佇列資料庫和佇列資料庫交易記錄的位置是由 XML 應用程式組態檔中的 %ExchangeInstallPath%Bin\EdgeTransport.exe.config
索引鍵所控制。 此檔案會與 Exchange Transport 服務產生關聯。 下表將更詳細地說明每一個機碼。
機碼 | 描述 |
---|---|
QueueDatabasePath | 指定佇列資料庫檔案的位置。 檔案如下:
預設位置是 |
QueueDatabaseLoggingPath | 指定佇列資料庫交易記錄檔的位置。 檔案如下:
請注意,Temp.edb 可在 Exchange Transport 服務啟動時,用於驗證佇列資料庫架構。 Temp.edb 雖然不是交易記錄檔,但仍會與交易記錄檔存放在相同的位置上。 預設位置是 |
開始之前有哪些須知?
預估完成時間:15 分鐘。
Exchange 權限無法套用於此主題的程序。 這些程序是在 Exchange 伺服器的作業系統中加以執行。
停止或重新啟動 Exchange Transport 服務時,系統會中斷該伺服器上的郵件流程。
當您變更佇列資料庫或交易記錄的位置時,不會移動現有的佇列資料庫和交易記錄檔。 新的佇列資料庫和新的交易記錄會在新的位置建立。 舊檔案會保留在舊的位置,但不再使用。 如果您想要在新位置重複使用舊的佇列資料庫或交易記錄檔,則必須在 Exchange Transport 服務停止時將檔案移至新位置。
佇列資料庫與交易記錄的資料夾需要下列權限:
網路服務:完全控制
系統:完全控制
系統管理員:完全控制
如果資料夾不存在,但父資料夾有這些權限,則新資料夾會自動建立。
任何自訂的 Exchange 或 Internet Information Server (IIS) 您在 Exchange Server (上于 Exchange XML 應用程式組態檔中所做的設定,例如,當您安裝 Exchange CU 時, 將會覆寫 web.config檔案或EdgeTransport.exe.config檔案) 。 請務必儲存此資訊,以便在安裝之後輕鬆地重新套用設定。 安裝 Exchange CU 之後,您必須重新設定這些設定。
如需適用於此主題中程序的快速鍵相關資訊,請參閱 Exchange 系統管理中心的鍵盤快速鍵。
有問題嗎? 在 Exchange 論壇中尋求協助。 此論壇的網址為:Exchange Server、Exchange Online 或 Exchange Online Protection。
使用命令提示字元在新位置上建立新的佇列資料庫與交易記錄
建立用以保存佇列資料庫與交易記錄的資料夾。 確認資料夾所套用的權限正確無誤。
在 [命令提示字元] 視窗中執行下列命令,即可在記事本中開啟 EdgeTransport.exe.config 檔案:
Notepad %ExchangeInstallPath%Bin\EdgeTransport.exe.config
在 區段中
<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 檔案。
執行下列命令,重新啟動 Exchange Transport 服務:
net stop MSExchangeTransport && net start MSExchangeTransport
如何知道這是否正常運作?
若要確認已在新位置上成功建立新的佇列資料庫與交易記錄,請執行下列步驟:
確認新的 Mail.que 與 Trn.chk 資料庫檔案已位於新位置上。
確認新的 Trn.log、Trntmp.log、Trnres00001.jrs、Trnres00002.jrs 和 Temp.edb 交易記錄檔位於新位置上。
若您在啟動 Exchange Transport 服務後可從原本位置刪除舊的佇列資料庫與交易記錄檔,即無法再使用舊的佇列資料庫。
使用命令提示字元將現有的佇列資料庫與交易記錄移至新位置
注意事項
另外還有一個腳本來移動佇列資料庫和交易記錄,您可以在 %ExchangeInstallPath%Scripts 資料夾中找到它,並稱為 Move-TransportDatabase.ps1。 您必須指定下列參數:queueDatabasePath、queueDatabaseLoggingPath、iPFilterDatabasePath、iPFilterDatabaseLoggingPath 和 temporaryStoragePath。
雖然您必須移動現有的佇列資料庫,以將任何無法傳遞的郵件保留在其中,但您通常不需要移動現有的交易記錄,因為:
Exchange Transport 服務的正常關閉程序,會將所有尚未認可的交易記錄項目寫入佇列資料庫中。
亦會使用循環記錄,因此若交易記錄內含先前認可的資料庫變更,則不會保留。
建立用以保存佇列資料庫與交易記錄的資料夾。 確認資料夾所套用的權限正確無誤。
在 [命令提示字元] 視窗中執行下列命令,即可在記事本中開啟 EdgeTransport.exe.config 檔案:
Notepad %ExchangeInstallPath%Bin\EdgeTransport.exe.config
在 區段中
<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 檔案。
執行下列命令,停止 Exchange Transport 服務:
net stop MSExchangeTransport
將現有的 Mail.que 與 Trn.chk 資料庫檔案從舊位置移至新位置上。
將現有的 Trn.log、Trntmp.log、Trn nnnnn.log、Trnres00001.jrs、Trnres00002.jrs 和 Temp.edb 從原有位置移至新位置。
執行下列命令,啟動 Exchange Transport 服務:
net start MSExchangeTransport
如何知道這是否正常運作?
若要確認已將現有的佇列資料庫與交易記錄成功移至新位置,請執行下列步驟:
確認 Mail.que 與 Trn.chk 佇列資料庫檔案已位於新位置中。
確認 Trn.log、Trntmp.log、Trnres00001.jrs、Trnres00002.jrs 和 Temp.edb 交易記錄檔位於新位置中。
確認舊位置中已無任何佇列資料庫或交易記錄檔。