狀況
請考慮下列情況:
-
您可以使用 Windows PowerShell 或 Exchange 管理主控台的,以啟用 Microsoft Exchange Server 2010 Service Pack 3 (SP3) 資料庫的被動的副本。
-
已裝載的資料庫卸下沒有問題,並掛上的被動副本。
-
資料庫副本的狀態會變為現在被動複本的初始化階段的失敗狀態。此外,資料庫副本的狀態訊息顯示失敗。
發生這個問題時,您會收到錯誤訊息在執行時,類似下列的Get MailboxDatabaseCopyStatus | fl 識別、 errormessage指令程式在 Exchange 管理命令介面 (EMC);
Microsoft Exchange 複寫服務在啟動時檢查記錄檔及資料庫的DB\Server時發生錯誤。錯誤︰ 檔案檢查失敗︰ 記錄檔'路徑\Exx.log' 是產生數字 1];不過預期的產生是數字 2。
例如,您可能會收到下列錯誤訊息︰
Microsoft Exchange 複寫服務在啟動時檢查記錄檔及資料庫的DB\Server時發生錯誤。錯誤︰ 檔案檢查失敗: 'f:\logs\DB\Enn.log' 的記錄檔會產生 2024;不過預期的產生是 2004 年。
原因
如果包含的磁碟區上已啟用的 8.3 名稱建立交易記錄在 Exchange Server 2010 SP3,,這可能會造成無效的交易記錄檔資料庫的啟動程序期間,findfile 查詢的一部分傳回。這會導致資料庫,因為交易記錄檔產生號碼不正確的順序傳送至失敗的狀態。
由於這項失敗,就會不發生遺失任何資料。
解決方案
若要解決這個問題,安裝下列更新彙總套件︰
更新彙總套件 2 的說明,對於 Exchange Server 2010 Service Pack 3
因應措施
步驟 1︰ 判斷 8.3 名稱建立的組態
如果要判斷是否已啟用 8.3 名稱建立,請從提高權限的命令提示字元中執行下列命令。(在這裡,我們假設交易記錄檔是位在磁碟 c)
fsutil 8dot3name query c:
如果預期的輸出傳回某些項目會啟用該 resemblbes 8.3 名稱建立下列︰
The volume state is: 0 (8dot3 name creation is enabled).
The registry state is: 2(Per volume setting-the default).
Based on the above two settings, 8dot3 name creation is enabled on C:
或者,您也可以預期的輸出可能會傳回類似下列︰
The volume state is: 0 (8dot3 name creation is enabled).
The registry state is: 0 (Per volume setting - the default).
Based on the above two settings, 8dot3 name creation is enabled on C:
這表示該磁碟機 C 已啟用的 8.3 名稱建立。
請確定您在包含交易記錄檔的磁碟區上執行此命令。如果您使用掛接點,您也可以使用下列︰
fsutil 8dot3name query Volume{928842df-5a01-11de-a85c-806e6f6e6963}
您必須在替代的磁碟區 GUID,以符合您的磁碟區 GUID。如果要判斷特定的磁碟機的磁碟區和 GUID,執行下列命令︰
mountvol [Drive:]Path /L
根據您的需求,您可以設定要停用所有磁碟區或磁碟區的磁碟區基礎依照步驟 3 所述的 8.3 名稱建立。它是最重要的是您要確定包含交易記錄檔的磁碟區,已停用 8.3 名稱建立。
步驟 2︰ 核取群組原則停用 8.3 名稱建立
您嘗試停用 8.3 名稱建立之前,您應該注意這項設定,可以透過 「 群組原則來控制。請檢查以判斷是否要將群組原則設定若要變更下列登錄機碼,Exchange 伺服器上︰
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem\NtfsDisable8dot3NameCreation"=dword:00000002
如果這個設定透過 「 群組原則控制,讓 Exchange 伺服器,[群組原則] 設定中移除這項設定,並 NtfsDisable8dot3NameCreation DWORD 設值為2。這可讓個別的磁碟區的變更。
注意如果使用0的值,則您無法變更磁碟區設定。
如需有關Fsutil 8dot3name命令的詳細資訊,請前往下列 Microsoft TechNet 網站︰
步驟 3︰ 變更 8.3 名稱建立
若要停用所有磁碟區的 8.3 名稱建立,請執行下列命令︰
fsutil 8DOT3name set
如果您希望只在包含交易記錄檔的個別磁碟區上停用,請執行下列命令︰
fsutil 8DOT3name set c: 1
注意這個命令中, c是包含交易記錄檔的磁碟機代號。
或者,您可以執行特定的磁碟區上。若要這樣做,請執行下列命令︰
fsutil 8dot3name query Volume{928842df-5a01-11de-a85c-806e6f6e6963}
若要停用 8.3 的名稱建立的磁碟區的組態變更之後,您可以驗證的設定已停用。若要這麼做,請再執行下列命令︰
fsutil 8DOT3name query c:
這會導致所有會建立或複製的新檔案,在這個磁碟區不是用來產生的檔名的 8.3 名稱。不過,所有現有的檔案仍然會包含 8.3 名稱。因此,您必須解決這個問題。
步驟 4︰ 移除現有的交易記錄檔的 8.3 名稱
選項 1
慣用的選項是在 Exchange 資料庫中執行完整備份。這會導致交易記錄檔被截斷,並移除具有 8.3 名稱的現有記錄檔。含有 8.3 名稱的所有交易記錄檔會被都截斷之後,資料庫移動不會失敗。
選項 2
如果不使用 [備份選項,則您必須管理所有的交易記錄檔,以確定 8.3 名稱會從檔案的複本。若要執行這項操作,請參考下列步驟:
-
包含資料庫的被動副本在伺服器上,則停止 Microsoft Exchange 複寫服務。
-
在 Windows PowerShell 中,執行下列命令︰
stop-service msexchangerepl
-
在 Windows 檔案總管] 中,找出您儲存交易記錄檔的資料夾。
-
選取的型別 Enn*.log,所有交易記錄檔,並將它們移至暫存資料夾。請確定您移動只有型別 Enn*.log 的交易記錄。您應該移動其他的檔案類型。
-
將所有交易記錄檔都移回其原始位置。在此移動程序中,會移除 8.3 名稱。
-
所有的被動資料庫的所有交易記錄檔,請都重複此程序。
-
重新啟動 Microsoft Exchange 複寫服務︰
start-service msexchangerepl
注意所有的資料庫的被動複本應該先完成此步驟。
-
移動資料庫的掛接 (使用中) 的副本到交易記錄檔管理的複本︰
Move-ActiveMailboxDatabase DB2 -ActivateOnServer MBX1 -MountDialOverride:None
-
停止 Microsoft Exchange 複寫服務,然後再將交易記錄檔移到暫存位置,然後返回到原來的位置。
-
啟動 Microsoft Exchange 複寫服務。現在,應該不會發生在移動 activemailboxdatabase動作的資料庫失敗。
更多的資訊
其他發生的常見徵狀會在應用程式記錄檔和 ExchangeHighAvailability 操作的記錄檔中。那里,事件會出現類似下列的︰
若要判斷是否有仍有交易記錄檔上的 8.3 名稱,您可以在交易記錄檔位置的命令提示字元執行下列命令︰dir /x 如果交易記錄檔仍會包含 8.3 名稱,您會看到類似下列的項目︰
04/10/2013 04:16 PM 1,048,576 E0C749~1.LOG E0000000118.log 04/10/2013 04:16 PM 1,048,576 E01D7D~1.LOG E0000000119.log 04/10/2013 04:16 PM 1,048,576 E00834~1.LOG E000000011A.log 04/10/2013 04:16 PM 1,048,576 E05DFF~1.LOG E000000011B.log 04/10/2013 04:16 PM 1,048,576 E06DCB~1.LOG E000000011C.log 04/10/2013 04:16 PM 1,048,576 E0F768~1.LOG E000000011D.log
注意如果您看到的下一步] 到最後一個資料行中的 E0F768~1.log 名稱時,您仍然必須具有 8.3 名稱的交易記錄檔。因此,您仍然會有問題,當您嘗試移動使用中的資料庫。