首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> SQL Server 資料庫 >> 關於SqlServer

解決 SQL Server 2008 R2 登入失敗 18456:啟用 sa 帳號與混合驗證

     編輯:關於SqlServer

錯誤現象

無法連接到 WENTASY-PC/SQLEXPRESS。使用者 'sa' 登入失敗。錯誤: 18456

三步驟解決

1. 啟用 sa 帳號並設定密碼

  • 使用 Windows 驗證登入 SSMS
  • 展開 安全性 → 登入名稱 → 雙擊 sa
  • 一般 頁:輸入/確認強密碼
  • 狀態 頁:登入 → 啟用 → 確定

2. 設定伺服器為混合驗證模式

  • 右鍵伺服器名稱 → 內容
  • 安全性 頁:選擇 SQL Server 和 Windows 驗證模式
  • 確定 → 必須重啟 SQL Server 服務生效

3. 重新以 sa 登入測試

  • 斷開連線 → 選擇 SQL Server 驗證
  • 登入:sa,密碼:剛設定的密碼
  • 連接成功

根本原因分析

安裝時雖選擇混合模式,但 sa 預設停用且無密碼。Windows 驗證登入後必須手動啟用 sa、設定密碼,並確認伺服器層級確實為混合模式 (有時安裝選項未生效)。

18456 State 碼快速查核

State含義對應動作
7帳號停用ALTER LOGIN sa ENABLE
8密碼錯誤重設密碼
11/12驗證模式不符設定混合模式 + 重啟服務

安全性建議

  • sa 密碼必須複雜、長度 ≥ 16 字元,定期輪換
  • 生產環境禁用 sa,建立專用低權限 SQL 登入
  • 啟用 登入失敗稽核:伺服器內容 → 安全性 → 登入稽核:失敗的登入
  • 考慮鎖定原則:ALTER LOGIN sa WITH CHECK_POLICY = ON
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved