「SQL Server 不存在或存取被拒絕」是最常見也最複雜的連線錯誤。本文提供系統化排查流程:物理連線 → 服務狀態 → 伺服端網路 → 用戶端網路。
ping <伺服器IP>
ping <伺服器名稱>
跨網段解析對策:編輯 C:\Windows\System32\drivers\etc\hosts 加入對應:
172.168.10.24 myserver
或用戶端網路工具設定別名 (見階段四)。
telnet <伺服器IP> 1433
路徑:開始 → 程式集 → Microsoft SQL Server → 伺服器網路公用程式
\\.\pipe\sql\query路徑:開始 → 程式集 → Microsoft SQL Server → 用戶端網路公用程式
別名: myserver
伺服器: sql2kcn-02
網路庫: Named Pipes / TCP/IP
相當於 hosts 檔但專用於 SQL Server 連線。企業管理員/查詢分析器用 sa 連線失敗常見原因:
sa 密碼錯誤或帳號鎖定解決:企業管理員 → 伺服器屬性 → 安全性 → 選擇「SQL Server 和 Windows」混合模式 → 重啟服務。
| 錯誤 | 可能原因 | 排查方向 |
|---|---|---|
| 17 / 53 / 64 | 網路不通、名稱解析失敗 | Ping、Hosts、DNS、防火牆 |
| 1433 連線失敗 | 服務未啟動、TCP 未啟用、防火牆封鎖 | Telnet、伺服端網路工具、防火牆規則 |
| 18452 / 18456 | 驗證模式不符、密碼錯誤 | 伺服器驗證模式、sa 密碼、登入對應 |
| 233 / 10054 | 連線中斷、封包過大 | MTU 設定、VPN/防火牆逾時 |