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

SQL Server 外網 IP 連線測試失敗完整排查指南

     編輯:關於SqlServer

現象描述

本機使用 UDL 測試:localhost、127.0.0.1、別名均連線成功,但使用外網 IP連線失敗,導致無法遠端存取。

分層排查流程

第一層:網路連通性驗證

ping <伺服器IP>
ping <伺服器名稱>
  • ping IP 失敗 → 檢查實體網路(網卡、Switch、Router)、防火牆是否封鎖 ICMP
  • ping IP 成功但 ping 名稱 失敗 → DNS 解析問題,檢查 DNS 服務或修改客戶端 HOSTS 檔(C:\WINNT\system32\drivers\etc\hosts)加入 IP 對應

第二層:連接埠與服務狀態

telnet <伺服器IP> 1433
  • 畫面閃爍游標閃動 → 連接埠開放,SQL Server 正常監聽
  • 「無法開啟連線」 → 檢查:
    ① SQL Server 服務是否啟動
    ② TCP/IP 協定是否啟用
    ③ 監聽埠是否為 1433(或自訂埠)

第三層:伺服器端網路設定

使用「伺服器網路公用程式」檢查:

  • 啟用協定:命名管道、TCP/IP
  • TCP/IP 屬性:確認埠號、是否勾選「隱藏伺服器」(僅影響列舉,不影響連線)

第四層:客戶端網路設定

使用「用戶端網路公用程式」檢查:

  • 同樣啟用命名管道、TCP/IP
  • TCP/IP 埠號與伺服器一致
  • 「別名」頁籤可設定連線別名(類似 HOSTS 功能)

常見錯誤與解決方案

錯誤二:「無法連線到伺服器,使用者 xxx 登入失敗」

原因:SQL Server 設為「僅 Windows 驗證」,無法使用 SQL 登入(如 sa)。

解決:

  1. 企業管理器 → 右鍵伺服器 → 「編輯 SQL Server 註冊屬性」 → 選「使用 Windows 驗證」連入
  2. 右鍵伺服器 → 「屬性」 → 「安全性」 → 驗證模式選「SQL Server 和 Windows」
  3. 重啟 SQL Server 服務

若步驟 1 失敗,可修改登錄:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\LoginMode
值:1=Windows 驗證,2=混合模式

修改為 2 後重啟服務。另需確認 BUILTIN\Administrators 與 <機器名>\Administrator 登入存在於「安全性/登入」中。

錯誤三:連線逾時

慢速網路或跨網段連線時常發生。調整逾時設定:

  • 企業管理器:「工具/選項/進階」→ 登入逾時改為 20 秒以上
  • 查詢分析器:「工具/選項/連線」→ 登入逾時調大

總結檢查清單

  1. Ping IP/名稱
  2. Telnet 1433
  3. 伺服器/客戶端網路公用程式協定啟用
  4. 驗證模式設定
  5. 防火牆/ISA/Rules 封鎖檢查
  6. 逾時參數調整

依序排除,多數外網連線問題可定位解決。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved