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

SQL Server 2005 Express 啟用混合驗證模式完整設定指南

     編輯:關於SqlServer

前言:Express 版預設僅支援 Windows 驗證

SQL Server 2005 Express (隨 VS2005 安裝) 預設僅啟用 Windows Authentication,若需使用 sa 或 SQL 登入連線 (如連線字串 uid=sa;pwd=xxx),必須手動切換至 **混合模式** 並啟用 sa 帳號。本文提供圖文級步驟與常見陷阱排除。

先決條件:安裝管理工具

Express 版不含圖形管理介面,需另行下載安裝:

  • SQL Server Management Studio Express (SSMSEE):安裝檔 SQLServer2005_SSMSEE.msi (免費)。
  • 或使用 Visual Studio 內建的 伺服器總管 進行基本操作。

三步驟完成混合模式設定

步驟 1:啟用遠端連線 (TCP/IP + Named Pipes)

  1. 開啟 SQL Server 組態管理員 (或「外圍應用配置工具」)。
  2. 展開 SQL Server 2005 網路設定 → SQLEXPRESS 的通訊協定。
  3. 右鍵 TCP/IP → 啟用 → IP Addresses 索引標籤 → 確認 IPAll 的 TCP Port 設為 1433 (或自訂埠)。
  4. 同樣啟用 Named Pipes (本機連線較快)。
  5. 重啟 SQL Server (SQLEXPRESS) 服務 使設定生效。

步驟 2:切換伺服器驗證模式為混合模式

  1. 開啟 SSMSEE,使用 Windows 驗證 連線本機 .\SQLEXPRESS。
  2. 右鍵伺服器節點 → 屬性 → 安全性 頁籤。
  3. 伺服器驗證 區域選擇 SQL Server 和 Windows 驗證模式。
  4. 登入稽核 建議選 失敗和成功的登入 (利於稽核)。
  5. 點選 確定,**系統提示需重啟服務**,按確定重啟。

步驟 3:啟用 sa 帳號並設定強密碼

  1. 展開 安全性 → 登入 → 找到 sa。
  2. 右鍵 sa → 屬性 → 一般 頁籤:
    • 確認 登入 核取方塊為 已啟用 (預設停用)。
    • 輸入強密碼 (符合複雜度原則)。
  3. 狀態 頁籤:確認 登入 = 啟用、連線到資料庫引擎 = 授與。
  4. 點選 確定 完成。

連線字串範例與測試


Server=.\SQLEXPRESS;Database=MyDB;User ID=sa;Password=StrongPwd;Trusted_Connection=False;


Server=192.168.1.100,1433;Database=MyDB;User ID=sa;Password=StrongPwd;

在 SSMSEE 或應用程式中測試連線,成功即完成設定。

常見錯誤與排除

錯誤訊息原因解決方案
「已成功與伺服器建立連接,但是在登入過程中發生錯誤」sa 帳號仍為停用狀態依步驟 3 啟用 sa 登入
「無法開啟連接」 / TimeoutTCP/IP 未啟用、防火牆阻擋、埠號錯誤、服務未啟動檢查組態管理員、防火牆入站規則、服務狀態
「登入失敗,使用者 'sa'」密碼錯誤、帳號鎖定、密碼原則違規重設密碼、檢查登入失敗次數、密碼複雜度
「不信任的連接」連線字串混用 Trusted_Connection=True 與 User ID移除 Trusted_Connection 或設為 False

安全性強化建議 (生產環境必做)

  • 重新命名 sa 帳號 (`ALTER LOGIN sa WITH NAME = [NewAdminName];`),降低暴力破解風險。
  • 建立最低權限的應用程式專用 SQL 登入,僅授與特定資料庫 db_datareader/db_datawriter。
  • 啟用 強制加密連線 (Force Encryption) 保護傳輸層憑證。
  • 定期稽核 登入失敗事件 (Error Log / Extended Events)。

版本相容性備註

  • SQL Server 2008 Express / 2012 Express / 2014 Express / 2016 Express / 2019 Express 設定邏輯相同,介面略有差異 (SSMS 取代 SSMSEE)。
  • LocalDB (輕量級 Express) 預設僅支援 Windows 驗證,同樣需透過 SqlLocalDB 命令列或註冊表修改啟用混合模式。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved