當您啟動 SQL Server 服務時,發生服務的特定錯誤 17113
適用於:SQL Server
徵兆
在 Microsoft SQL Server 中 master
,資料庫會記錄所有系統層級資訊。 資料庫 master
也會記錄所有其他資料庫是否存在、這些資料庫檔案的位置,以及 SQL Server 的初始化資訊。 因此,如果資料庫無法使用, master
SQL Server 就無法啟動。
當您嘗試在此案例中啟動 SQL Server 時,SQL Server 服務不會啟動,而且您會收到下列其中一個錯誤訊息,視您嘗試如何啟動服務而定:
使用 服務 小程式:
Windows 無法在本機計算機上啟動 SQL Server (MSSQLSERVER)。 如需詳細資訊,請檢閱系統事件記錄檔。 如果這是非Microsoft服務,請連絡服務提供者,並參考服務特定的錯誤碼 17113。
使用命令提示字元:
C:\\>NET START MSSQLSERVER The SQL Server (MSSQLSERVER) service is starting. The SQL Server (MSSQLSERVER) service could not be started. A service specific error occurred: 17113. More help is available by typing NET HELPMSG 3547.
解決方法
檢查 SQL Server 錯誤記錄檔 ,並確認原因是否為資料庫無法
master
存取。 例如,您可能會看到類似下列的記錄專案:<Datetime> Server Error: 17113, Severity: 16, State: 1. <Datetime> Server Error 2(The system cannot find the file specified.) occurred while opening file 'C:\Program Files\Microsoft SQL Server\MSSQL15.MSSQLSERVER\MSSQL\DATA\master.mdf' to obtain configuration information at startup. An invalid startup option might have caused the error. Verify your startup options, and correct or remove them if necessary.
確認 master.mdf 檔案的位置。 如果路徑不正確,請使用 SQL Server 組態管理員 或註冊表編輯器來修正路徑。
使用 SQL Server 組態管理員:
依序選取 [開始]、[所有程式]、[Microsoft SQL Server]、[組態工具],然後選取 [SQL Server 組態管理員]。
注意
由於 SQL Server 組態管理員 是 Microsoft Management Console 程式的嵌入式管理單元,而不是獨立程式,因此 SQL Server 組態管理員 不會在較新版本的 Windows 中顯示為應用程式。 若要在 Windows 11、10 或 8 中開啟 SQL Server 組態管理員,請針對您的 Windows 版本遵循下列步驟。
Windows 10 和 11:
- 選取 [起始 頁],輸入 SQLServerManager13.msc (適用於 SQL Server 2016 (13.x)]。 針對不同版本的 SQL Server,請以適當的數位取代 13。
- 選取 [SQLServerManager13.msc ] 以開啟 Configuration Manager。 若要將 Configuration Manager 釘選到起始頁或任務欄,請以滑鼠右鍵按兩下 [SQLServerManager13.msc],然後選取 [ 開啟檔案位置]。
- 在 Windows 檔案總管 中,以滑鼠右鍵按兩下 [SQLServerManager13.msc],然後選取 [釘選到開始] 或 [釘選到任務欄]。
Windows 8:
按 Windows 標誌鍵+Q 以開啟搜尋魅力。 在 [應用程式] 下,輸入 SQLServerManager<version_number.msc>(例如 SQLServerManager13.msc),然後按 Enter。
在 [SQL Server 組態管理員] 中,選取 [SQL Server 服務]。
在右窗格中,以滑鼠右鍵按兩下 [SQL Server][<instance_name>],然後選取 [ 屬性]。
在 [啟動參數] 索引標籤上,選取 [現有參數] 區段中以 -d 開頭的數據列。 目前的值是可編輯的。 指定啟動參數方塊。 修正路徑以反映正確的值,選取 [更新],然後選取 [ 確定 ] 以儲存變更。
重新啟動 SQL Server 服務。
如需設定啟動選項的詳細資訊,請參閱設定伺服器啟動選項(SQL Server 組態管理員)。
如需資料庫引擎服務啟動選項的詳細資訊,請參閱 資料庫引擎 服務啟動選項。
使用註冊表編輯器:
流覽至 SQL Server 實例的
HKLM\Software\Microsoft\MicrosoftSQL Server\MSSQL{nn}.MyInstance
Hive。在下
MSSQLServer\Parameters
找出SQLArg0值。變更值以反映資料庫的正確路徑
master
。重新啟動 SQL Server 服務。
master
如果資料庫存在,但無法使用,您可以使用下列其中一種方法,將資料庫傳回可用狀態:檢查檔案所在資料夾的服務帳戶許可權。
從完整資料庫備份還原 master 資料庫 - 如果您可以啟動伺服器實例。
如果資料庫的伺服器損毀
master
導致您無法啟動 SQL Server, 請重建 master 資料庫。警告
重建資料庫會
master
重建所有系統資料庫。 因此,這些資料庫的任何使用者修改都會遺失。