全新安裝 SQL Server 後嘗試遠端連線,常遇到錯誤:
「在預設設定下 SQL Server 不允許遠端連線... (provider: 命名管道提供者, error: 40 - 無法開啟連線)」
本文提供分層排查清單,依序驗證服務、通訊協定、防火牆、瀏覽器服務,快速定位問題。
SQL Server (MSSQLSERVER) 狀態為「執行中」;啟動類型設為「自動」。IPAll、IP1...IPn,確認 TCP 連接埠 設為 1433(預設執行個體),啟用 = Yes。SQL Server Browser 服務並設為自動。sqlservr.exe(通常在 C:\Program Files\Microsoft SQL Server\MSSQLxx.MSSQLSERVER\MSSQL\Binn\)→ 允許連線。Server=192.168.1.100;Database=MyDB;User Id=sa;Password=xxx;Server=192.168.1.100\INST1;Database=MyDB;User Id=sa;Password=xxx; 或指定連接埠 Server=192.168.1.100,1433;...telnet 192.168.1.100 1433、Test-NetConnection -ComputerName 192.168.1.100 -Port 1433 (PowerShell)。| 現象 | 可能原因 | 對策 |
|---|---|---|
| 本機可連、遠端失敗 | 防火牆阻擋 1433/1434 | 新增輸入規則 |
| 具名實體無法連線 | Browser 服務未啟動 / UDP 1434 被封 | 啟動 Browser、開放 UDP 1434 |
| 錯誤 26 / 40 | TCP/IP 未啟用或連接埠錯誤 | 組態管理員啟用 TCP/IP、確認 1433 |
| 服務無法啟動 | VIA 通訊協定衝突 | 停用 VIA |
遠端連線問題 90% 集中在「通訊協定未啟用、防火牆未開放、Browser 服務未啟動」三項。依照本清單逐層驗證,通常 10 分鐘內即可解決。