SQL Server 2005 Express 預設僅啟用 Windows 驗證模式,導致 SA 帳號無法登入。本文提供圖文步驟,快速切換至混合驗證模式並啟用 SA 帳號。
操作步驟
1. 切換伺服器驗證模式
- 使用 Windows 驗證登入 SSMS(SQL Server Management Studio)。
- 在「物件總管」中右鍵點擊伺服器名稱,選擇「屬性」。
- 左側選單選「安全性」,將「伺服器驗證」改為 SQL Server 和 Windows 驗證模式。
- 將「登入稽核」設為「無」(或依合規需求設定)。
- 點擊「確定」,系統提示需重新啟動服務生效。
2. 重設 SA 帳號密碼並啟用
- 展開「安全性」→「登入」,右鍵
sa 選「屬性」。
- 一般頁籤:輸入新密碼,取消勾選「強制執行密碼原則」。
- 狀態頁籤:將「登入」設為「啟用」。
- 點擊「確定」儲存。
3. 重新啟動 SQL Server 服務
- 開啟「SQL Server Configuration Manager」(SQL Server 組態管理員)。
- 右鍵「SQL Server (SQLEXPRESS)」選擇「重新啟動」。
- 服務重啟後,即可使用 SA 帳號與新密碼登入。
常見問題排查
- 仍無法登入:確認防火牆開放 1433 埠,且 TCP/IP 協定已在「SQL Server 網路組態」中啟用。
- 密碼策略錯誤:若密碼不符合複雜度要求,可暫時關閉「強制執行密碼原則」,或設定符合策略的強密碼。
- 登入失敗 18456:查看 SQL Server 錯誤日誌(預設路徑
C:\Program Files\Microsoft SQL Server\MSSQL.x\MSSQL\Log\ERRORLOG),依狀態碼進一步診斷(如狀態 8 為密碼錯誤,狀態 11/12 為帳號鎖定/停用)。
補充:登錄表強制切換模式(進階)
若 SSMS 無法操作,可直接修改登錄表:
路徑:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL.1\MSSQLServer
值:LoginMode = 2 (1=Windows 驗證, 2=混合模式)
修改後必須重新啟動 SQL Server 服務生效。