ESE 474 -1018:在資料庫中偵測到無法回復的錯誤

[本主題的目的是要說明 Exchange Server Analyzer 工具所引出的特定問題。您只應將它套用到已執行過 Exchange Server Analyzer 工具且有遇到該特定問題的系統。Exchange Server Analyzer 工具可免費下載,它會從拓撲中的每台伺服器遠端收集組態資料,並自動分析該資料。產生的報告會詳述重要的組態問題、潛在問題及非預設的產品設定。遵循這些建議,您便能達到較佳的效能、延展性、可靠性及執行時間。如需此工具的相關資訊或是要下載最新版本,請參閱 Microsoft Exchange Analyzer (https://go.microsoft.com/fwlink/?linkid=34707)。]  

上次修改主題的時間: 2008-01-18

Microsoft Exchange 資料庫疑難排解員工具在應用程式記錄檔中,偵測到一或多個具有錯誤碼 -1018 的 ESE 474 事件。如果 Microsoft Exchange 完整性驗證元件判定 Exchange Server 無法正確儲存或擷取硬碟子系統中的 Exchange 資料庫檔案資料,就會產生這個錯誤。

說明

發生錯誤為 -1018 的 ESE 474 事件的原因是硬碟子系統硬體元件有問題,或是硬碟子系統中有過時或不相容的驅動程式及/或韌體。

發生 -1018 錯誤之後,針對伺服器執行的診斷硬體測試可能會報告沒有磁碟子系統硬體問題,而合理的假設就是此問題肇因於 Exchange Server。

由 Microsoft 及硬體廠商進行的大規模調查確定,大部份 -1018 錯誤的原因是磁碟子系統硬體元件、支援驅動程式及/或韌體的微妙問題。

在資料庫檔案中找到的初始化分頁有下列任一狀況時,Exchange 就會報告 -1018 錯誤:

  • 分頁上儲存的總和檢查碼不符合讀取分頁時所執行的總和檢查碼重新計算結果。
  • 分頁上儲存的頁碼不符合分頁上應有的頁碼 (也就是分頁在資料庫檔案中的實際位置)。

如果發生下列其中一個案例,則 Exchange 可能就是自行產生的 -1018 錯誤的原因:

  • Exchange 建置的分頁總和檢查碼錯誤。
  • Exchange 正確建置分頁,但要求作業系統將分頁寫入錯誤的位置。

Exchange 針對即將在所有資料都寫入分頁之後寫入磁碟的分頁,產生總和檢查碼。這也包括頁碼本身。當 Exchange 將總和檢查碼新增到分頁之後,Exchange 就會指示 Windows 作業系統使用已發佈的標準 Windows 型 API 將分頁寫入磁碟。

而暫時性記憶體錯誤可能會使分頁寫入硬碟機上的錯誤位置。

即使分頁總和檢查碼正確,Exchange 仍會報告 -1018 錯誤,原因是邏輯頁碼與實體頁碼不符。

在 Exchange 資料庫中報告的單一 -1018 錯誤通常不會造成 Exchange 資料庫停止,也不會導致除了 -1018 錯誤之外的徵兆。受影響的分頁可能位於不常存取的資料夾中 (例如「寄件備份」或「刪除的郵件」資料夾),或是位於極少開啟或甚至是空的附件中。

雖然單一 -1018 錯誤不太可能造成大規模的資料遺失,但是因為 -1018 錯誤可能表示儲存系統至少有一次並未以可靠的方式儲存或擷取資料,所以還是要加以注意。-1018 錯誤對於會隨著時間逐漸惡化的問題而言是一項早期警訊。即使第一個 -1018 錯誤是針對資料庫中的空白分頁所報告,但下次會是哪個分頁損毀,卻無法預知。如果重要的全域表格損毀,Exchange資料庫可能就無法啟動,而資料庫修復可能不會成功或只有部份成功。

記錄 -1018 錯誤之後,除非您找到錯誤的起因,否則請準備應對資料庫可能即將發生的失敗或其他隨機損毀。

使用者動作

嘗試修正應用程式記錄檔中記錄的 ESE 474 -1018 錯誤之前,請確定伺服器磁碟子系統的穩定程度。

若要疑難排解磁碟子系統,請執行下列動作:

  1. 開啟應用程式記錄檔並搜尋 ESE 474 事件。記下每個事件中,受影響之資料庫的完整路徑。收集好受影響的資料庫清單之後,請注意資料庫路徑中參照的磁碟機代號。此項資訊可讓您直接針對上述實體磁碟進行疑難排解。
  2. 檢閱系統記錄檔,並確定沒有記錄到磁碟讀取、寫入或逾時等錯誤。
  3. 使用製造商提供的磁碟子系統診斷公用程式,並與磁碟子系統硬體廠商連絡,尋求提供更多協助來驗證磁碟子系統的完整性。

修正磁碟子系統的所有問題或驗證其穩定性之後,請使用下列方法從 -1018 錯誤中復原。這些方法是以偏好的使用順序列出:

第一個方法 將信箱從應用程式記錄檔中 ESE 474 問題所提到的資料庫移出。您可以將信箱移到已知良好的現有儲存區,或是建立一個專供解決此問題的新信箱儲存區。移動所有信箱之後,請刪除損毀的信箱儲存區。

若要移動信箱 (Exchange 2000 Server 或 Exchange Server 2003)

  1. 在 [Active Directory 使用者及電腦] 中,選取要移動其信箱的使用者。

  2. 在您於上一個步驟中選取的使用者清單上按一下滑鼠右鍵,然後按一下 [Exchange 工作]。

  3. 在 [Exchange 工作精靈] 中的 [可用的工作] 頁面上,按一下 [移動信箱],然後按 [下一步]。

  4. 請仔細閱讀並遵循精靈的其餘步驟。

若要移動信箱 (僅限於 Exchange Server 2003)

  1. 在 [Exchange 系統管理員] 中,依序展開 [伺服器]、要移動信箱的來源伺服器、要移動信箱的來源 [儲存群組],以及包含要移動之信箱的 [信箱儲存區],然後按一下 [信箱]。

  2. 在詳細資料窗格中,在要移動其信箱的使用者上按一下滑鼠右鍵,然後按一下 [Exchange 工作]。

  3. 在 [Exchange 工作精靈] 中的 [可用的工作] 頁面上,按一下 [移動信箱],然後按 [下一步]。

  4. 請仔細閱讀並遵循精靈的其餘步驟。

只使用 Exchange Server 2007 的 Exchange 管理主控台來移動信箱

  1. 啟動 Exchange 管理主控台。

  2. 在主控台樹狀目錄中,展開 [收件者組態],然後按一下 [信箱]。

  3. 在結果窗格中,按一下要移動的信箱。

  4. 在執行窗格中,按一下 [移動信箱]。

  5. 在 [移動信箱精靈] 的 [簡介] 頁面上,選取要將信箱移到哪個伺服器、儲存群組及信箱資料庫,然後按 [下一步]。

  6. 在 [移動選項] 頁面上,選取用來處理信箱中損毀郵件的選項,然後按 [下一步]。

  7. 在 [移動排程] 頁面上,指定移動的時間,然後按 [下一步]。

  8. 在 [移動信箱] 頁面上,檢閱摘要以確認移動信箱,然後按一下 [移動]。

  9. 在 [完成] 頁面上,按一下 [完成]。

如需有關使用「移動信箱」精靈及 Move-Mailbox 指令程式之支援案例的相關資訊,請參閱 Exchange Server 2007 產品文件中的<移動信箱>(https://go.microsoft.com/fwlink/?LinkId=85754) (英文)。

第二個方法 從已知良好的備份來復原資料庫。如需如何復原 Exchange Server 資料庫的相關資訊,請參閱下列文章:

第三個方法 使用 Eseutil 對受影響的資料庫執行強制修復。只有在前兩種方法都失敗時,才執行這個方法。執行強制修復之後,還必須對已修復的資料庫執行離線磁碟重組,並執行 Isinteg 工具來修復邏輯損毀。這些步驟可以使用「Exchange 資料庫疑難排解員修復工作」來執行。系統會自動執行 Eseutil /P、Eseutil /D 及 Isinteg。

詳細資訊

如需這個問題的相關資訊,請參閱下列 Microsoft 知識庫文章和 Exchange 資源: