Login failed for user 'sa'. Reason: Not associated with a trusted SQL Server connection
SQL Server 安全性設置為 "Windows Authentication Mode",拒絕 SQL 登錄。
SA 登錄失敗,雖然啟用了 SA 賬號但仍報錯。
Express 默認註冊表 LoginMode = 1(Windows Authentication),需改為 2(Mixed)。
regedit 定位:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL10.SQLEXPRESS\MSSQLServer\LoginMode1 → 2(十進制)CHECK_POLICY = ON(默認)
Error: 18456, Severity: 14, State: 10.
ALTER LOGIN sa WITH CHECK_POLICY = OFF;Microsoft 提供熱修復補丁(需 SP1),詳見 KB 文檔,建議優先按上述配置修復。
| 檢查項 | 命令/位置 | 正常狀態 |
|---|---|---|
| 認證模式 | SSMS 服務器屬性 → 安全性 | SQL Server 和 Windows |
| SA 狀態 | 安全性 → 登錄名 → sa → 狀態 | 啟用 |
| SA 密碼 | 同上 → 常規 | 已設置、符合策略 |
| TCP/IP | 配置管理器 → 網絡配置 | 已啟用、Port 1433 |
| 防火牆 | 入站規則 / telnet | 放行 1433 |
| 服務狀態 | services.msc | 運行中 |
| 錯誤日誌 | ...MSSQL\Log\ERRORLOG | 無 18456/17892/40 錯誤 |
-- 標準
Server=myServer\Instance;Database=myDB;User ID=sa;Password=myPass;Encrypt=False;TrustServerCertificate=True;
-- 應用層連接池
Max Pool Size=100;Connection Timeout=30;