SQL Server 服務 (MSSQLSERVER 或具名執行個體) 啟動失敗,事件檢視器記錄:「因登入失敗而無法啟動服務」 (Error 1069)。
SQL Server 服務設定為以特定 Windows 帳號 (預設常為 Administrator 或安裝時指定帳號) 身分執行。若該帳號發生以下變更,服務將無法登入:
Administrator → Admin)lusrmgr.msc),將服務帳號密碼改回原值,或解除鎖定/啟用帳號。適用情境:臨時密碼變更、緊急上線前快速恢復。
services.msc)。Domain\User 或 .\LocalUser)。適用情境:密碼依政策定期輪換、帳號重命名後的永久修正。
svc_sqlengine),設定密碼永不過期、不可變更密碼 (由管理解決方案如 gMSA 管理更佳)。secpol.msc → 本地原則 → 使用者權利指派。優勢:隔離服務身分、避免人員異動/密碼政策影響生產、符合最小權限原則、利於稽核。
| 檢查項目 | 頻率 | 工具/指令 |
|---|---|---|
| 服務帳號密碼是否即將過期 | 每月 | net user svc_sqlengine /domain 查看 Password expires |
| 帳號是否被鎖定/停用 | 每週 | ADUC / Get-ADUser -Identity svc_sqlengine -Properties LockedOut |
| 「以服務身分登入」權利是否仍生效 | 每季 | secpol.msc 或 secedit /export |
| 資料/記錄/備份目錄 NTFS 權限 | 每季 | icacls "D:\MSSQL\Data" |
| SPN 註冊狀態 (Kerberos) | 每季 | setspn -L svc_sqlengine |
sa 為空密碼時允許,極不安全,生產環境嚴禁。