共用方式為


安裝 SQL Server 累積更新或 Service Pack 時,登錄中的數據或記錄檔目錄無效的錯誤

本文可協助您解決安裝 SQL Server 實例累積更新或 Service Pack 時所發生的問題。

原始產品版本:SQL Server
原始 KB 編號: 2565113

徵兆

當您安裝 SQL Server 實例的累積更新或 Service Pack 時,安裝程式可能會失敗,並出現下列其中一個錯誤訊息:

The User Data directory in the registry is not valid. Verify DefaultData key under the instance hive points to a valid directory.
Error code: 0x851A0043
The User Log directory in the registry is not valid. Verify DefaultLog key under the instance hive points to a valid directory.
Error code: 0x851A0044
Error installing SQL Server Database Engine Services Instance Features. The Database Engine system data directory in the registry is not valid.

發生問題時,SQL Server 安裝程式記錄檔 Summary.txt 有下列其中一則訊息:

Detailed results:
  Feature:                       Database Engine Services
  Status:                        Failed: see logs for details
  Reason for failure:            An error occurred during the setup process of the feature.
  Next Step:                     Use the following information to resolve the error, and then try the setup process again.
  Component name:                SQL Server Database Engine Services Instance Features
  Component error code:          0x851A0043
  Error description:             The User Data directory in the registry is not valid. Verify DefaultData key under the instance hive points to a valid directory.
  Error help link:               http://go.microsoft.com/fwlink?LinkId=20476&ProdName=Microsoft+SQL+Server&EvtSrc=setup.rll&EvtID=50000&ProdVer=11.0.7001.0&EvtType=0xD8FB5EBA%400x97A656BB%401306%4067&EvtType=0xD8FB5EBA%400x97A656BB%401306%4067
Detailed results:
  Feature:                       Database Engine Services
  Status:                        Failed: see logs for details
  Reason for failure:            An error occurred during the setup process of the feature.
  Next Step:                     Use the following information to resolve the error, and then try the setup process again.
  Component name:                SQL Server Database Engine Services Instance Features
  Component error code:          0x851A0044
  Error description:             The User Log directory in the registry is not valid. Verify DefaultLog key under the instance hive points to a valid directory.
  Error help link:               http://go.microsoft.com/fwlink?LinkId=20476&ProdName=Microsoft+SQL+Server&EvtSrc=setup.rll&EvtID=50000&ProdVer=11.0.7001.0&EvtType=0xD8FB5EBA%400x97A656BB%401306%4068&EvtType=0xD8FB5EBA%400x97A656BB%401306%4068

原因

當資料庫的預設數據或記錄檔位置指向無效的位置時,就會發生此問題。 導致此問題的常見案例如下:

  • 變更資料庫和記錄檔的儲存磁碟驅動器,並遺失以更新預設數據和記錄位置。
  • 在 [資料目錄] 索引標籤中初始安裝期間,預設數據或記錄路徑的設定錯誤(請參閱 資料庫引擎 組態 - 資料目錄頁面)。
  • SQL Server Management Studio 中 [資料庫設定] 底下的預設數據或記錄路徑設定錯誤(請參閱檢視或變更數據和記錄檔的預設位置)。

解決方法

使用下列程式來解決問題。

步驟 1:更正預設數據和記錄檔目錄的有效資料夾路徑

您可以使用 SQL Server Management Studio 或註冊表編輯器,將預設資料目錄和記錄目錄值設定為有效的資料夾路徑。

方法 1:使用 SQL Server Management Studio (SSMS) 和 SQL Server 組態管理員
  1. 在 SSMS 中,開啟 [物件總管],以滑鼠右鍵按兩下伺服器實例,然後選取 [屬性]。
  2. 在左側面板中,選取 [ 資料庫設定 ] 頁面。
  3. [資料庫預設位置] 中,您可以檢視新資料檔和新記錄檔的目前預設位置。
  4. 若要變更預設位置,請在 [資料 ] 或 [記錄 ] 欄位中輸入新的預設路徑名稱,或選取瀏覽按鈕以尋找並選取路徑名稱。
  5. 開啟 [SQL Server 組態管理員],並選取 [SQL Server 服務] 。
  6. 按兩下您的實例,然後選取 [ 進階 ] 索引標籤。
  7. 檢閱資料路徑屬性,並查看值是否正確。 值呈現灰色,無法從這裡修改。
  8. 如果值不正確,請使用 方法 2 將它更新為正確的路徑。
方法 2:使用註冊表編輯器

重要

這個章節、方法或工作包含修改登錄的步驟。 如果您未正確修改登錄,可能會發生嚴重問題。 因此,請務必小心執行下列步驟。 為增加保護起見,請先備份登錄,再進行修改。 然後,如果發生問題,您就可以還原登錄。 如需備份和還原登錄的詳細資訊,請參閱如何在 Windows 中備份及還原登錄

  1. 從命令行啟動註冊表編輯器 (Regedit.exe)。

  2. 找出並選取登錄子機碼 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL{nn}.Instance\MSSQLServer

    注意

    在此登錄子機碼中, MSSQL{nn}.Instance 代表您系統的對應值。 若要取得此值,請找出並選取登錄子機碼: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\Instance Names\SQL\

  3. 在右側面板中,選取 DefaultData 登錄專案,並在指向不正確的位置時輸入有效的路徑。

  4. 在右側面板中,選取 DefaultLog 登錄專案,並在指向不正確的位置時輸入有效的路徑。

  5. 找出並選取登錄子機碼 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL{nn}.Instance\Setup

  6. 在右側面板中,選取 SQLDataRoot 登錄專案,並在指向不正確的位置時輸入有效的路徑。

步驟 2:重試 Service Pack 或累積更新的安裝

更正受影響實例的數據和記錄路徑之後,您可以重試安裝。

安裝程式可能會顯示實例已經升級,而且可能不允許您只選取 Database Services 元件。 您必須選取該實例的所有功能,安裝程式才能繼續。

參考資料

檢視與讀取 SQL Server 安裝程式記錄檔