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

解決 SQL Server Management Studio 無法連線遠端資料庫完整排查清單

     編輯:關於SqlServer

常見錯誤訊息

An error has occurred while establishing a connection to the server.
(provider: Named Pipes Provider, error: 40 – Could not open a connection to SQL Server) (Microsoft SQL Server, Error: 5 / 1326)

核心原因:**網路通訊協定未啟用、防火牆阻擋、遠端連線未開啟、服務未啟動、Browser 服務缺失**。

六大排查步驟 (依序執行)

1. 確認伺服器端 SQL Server 服務已啟動

  • SQL Server Configuration Manager → SQL Server Services → 狀態 = Running。
  • 或 `services.msc` 找 SQL Server (MSSQLSERVER/具名實例) 啟動。
  • 快速驗證:客戶端執行 `sqlcmd -L` 查看是否列出該實例。

2. 啟用 TCP/IP 協定 (必要)

  • Configuration Manager → SQL Server Network Configuration → 選擇實例 → TCP/IP → 右鍵啟用。
  • 建議同時啟用 Named Pipes 相容舊版用戶端。
  • 修改後必須重啟 SQL Server 服務生效。

啟用 TCP/IP

3. Windows 防火牆開放連接埠

  • 控制台 → Windows 防火牆 → 進階設定 → 輸入規則 → 新增規則 → 連接埠 → TCP → 1433 (預設實例)。
  • 具名實例:另需開放 SQL Browser 服務 (UDP 1434) 及動態埠 (或設定固定埠)。
  • 或新增程式例外:`sqlservr.exe`、`sqlbrowser.exe`。

防火牆新增連接埠 防火牆規則精靈 連接埠 1433 規則完成

4. SSMS 啟用遠端連線

  • SSMS 連線本機實例 → 右鍵伺服器 → 屬性 → 連線 → 勾選 允許遠端連線至這部伺服器。
  • 預設為關閉。

伺服器屬性 允許遠端連線

5. 啟用 SQL Server Browser 服務 (具名實例必備)

  • Configuration Manager → SQL Server Services → SQL Server Browser → 右鍵啟動,啟動類型設為自動。
  • 功能:解析具名實例對應的動態 TCP 埠,讓用戶端僅用 Server\Instance 連線。

啟用 Browser

6. 防火牆允許 sqlbrowser.exe

  • 路徑通常:`C:\Program Files\Microsoft SQL Server\90\Shared\sqlbrowser.exe` (版本號依版本不同)。
  • 防火牆新增「程式」例外指向此檔,或開放 UDP 1434。

進階:建立伺服器別名

Configuration Manager → 別名 → 新增別名 (如 MyAppDB) 指向實際實例/IP/埠。應用程式連線字串使用別名,未來遷移伺服器只需修改別名目標,無需改代碼/設定檔。

建立別名

快速驗證指令碼

-- 客戶端機器開啟 CMD
sqlcmd -S 遠端IP\實例名 -U 帳號 -P 密碼 -Q "SELECT @@VERSION"
-- 成功顯示版本資訊即連線正常
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved