錯誤現象
事件 ID 17058:initerrlog: 無法開啟錯誤日誌檔案 D:\WWW\Services\SQLDATE\MSSQL10.MSSQLSERVER\MSSQL\Log\ERRORLOG。作業系統錯誤 = 5 (拒絕存取)。
根因
SQL Server 服務啟動帳戶 (預設為 NT SERVICE\MSSQLSERVER 或 SQLServerMSSQLUser$...) 對 Log 目錄缺乏「修改」權限,導致無法建立/寫入 ERRORLOG。
解決步驟
- 開啟檔案總管,定位到錯誤訊息中的 Log 目錄。
- 右鍵 →「內容」→「安全性」→「編輯」。
- 點選「新增」→「進階」→「立即尋找」→ 選取 SQLServerMSSQLUser$<機器名>$MSSQLSERVER (或
NT SERVICE\MSSQLSERVER) → 確定。
- 授與 修改、讀取與執行、寫入 權限 → 確定套用。
- 開啟「SQL Server 組態管理員」→ 啟動 SQL Server 服務,應可正常啟動。
預防建議
- 安裝時指定資料/記錄/備份目錄於非系統磁碟,並預先設定服務帳戶權限。
- 使用「SQL Server 組態管理員」變更服務帳戶時,工具會自動套用 ACL,避免手動疏漏。
- 定期備份 ERRORLOG 並設定循環保留數量(預設 6 個),防止磁碟塞滿。