SQL Server 2005 安裝完成後,若選擇「僅 Windows 驗證」模式,將無法使用 sa 帳戶登入。本文提供快速解決步驟:透過 Windows 驗證登入 SSMS,切換至混合模式,並重設 sa 密碼。
. 或 .\InstanceNameEXEC sp_password NULL, 'NewStrongPassword123!', 'sa';
sa → 屬性MSSQLSERVER / MSSQL$InstanceNamesa,密碼:剛設定的新密碼| 現象 | 原因 | 解決 |
|---|---|---|
| sp_password 報錯「密碼不符合原則」 | 強制密碼原則啟用,新密碼太簡單 | 使用複雜密碼,或 SSMS 介面取消勾選強制原則 |
| 修改驗證模式後仍無法用 sa 登入 | 未重啟 SQL Server 服務 | 必須重啟服務 |
| sa 帳戶被鎖定/停用 | 多次密碼錯誤或安裝時未啟用 | SSMS 登入屬性 → 狀態 → 登入:已啟用;取消勾選鎖定 |
| 忘記 sa 密碼且無 Windows 管理員權限 | 單一使用者模式啟動重設 | 啟動參數加 -m,用 sqlcmd -S . -E 進入重設 |
sa 為最高權限內建帳戶,務必設定強式密碼 (≥16 字元、大小寫、數字、符號)sysadmin 帳戶並定期輪換密碼sa 登入來源 IP (登入觸發器/防火牆/端點)sa 登入活動 (登入稽核/擴充事件)-- 1. 停止 SQL Server 服務
-- 2. 命令列啟動單一使用者模式
sqlservr.exe -m -s MSSQLSERVER -- 預設實例
sqlservr.exe -m -s MSSQL$INSTANCENAME -- 具名實例
-- 3. 新視窗用 sqlcmd 連線 (Windows 驗證,本機管理員)
sqlcmd -S . -E
-- 4. 重設密碼並啟用 sa
ALTER LOGIN sa WITH PASSWORD = 'NewStrongPassword123!', UNLOCK, ENABLE;
GO
-- 5. Ctrl+C 停止 sqlservr.exe,正常啟動服務