首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

Eclipse 連接 SQL Server 2008 失敗?檢查「允許遠端連線」設定

     編輯:程式設計綜合問答

在 Eclipse(或 DBeaver、DataGrip 等 JDBC 客戶端)連接 SQL Server 2008 時,雖然已匯入 JDBC 驅動、開啟 TCP 1433 埠、啟動 Telnet 服務,但在命令列 telnet ip 1433 顯示連線失敗,Eclipse 同樣報錯。最常見原因是 **SQL Server 本身未啟用遠端連線**。

核心檢查步驟

  1. SQL Server Configuration Manager → 網路設定 → MSSQLSERVER 協定
    右鍵 TCP/IP → 「啟用」= 是。
  2. 同視窗 → TCP/IP 屬性 → IP Addresses
    - IPAll 區段:TCP Port = 1433(清空 TCP Dynamic Ports)。
    - 確認 IP1、IP2... 對應伺服器實際 IP 的 Enabled = Yes。
  3. SQL Server 服務重啟
    變更協定後必須重啟 SQL Server (MSSQLSERVER) 服務才生效。
  4. 防火牆入站規則
    新增規則:TCP 1433 允許;若使用命名實例,另開 UDP 1434 (SQL Browser)。
  5. SQL Server 登入驗證模式
    SSMS 連線 → 伺服器屬性 → 安全性 → SQL Server 和 Windows 驗證模式 → 重啟服務。

快速驗證指令

# 伺服器端執行
netstat -an | findstr 1433
# 應顯示 0.0.0.0:1433 LISTENING

# 用戶端測試
telnet  1433
# 或 PowerShell
Test-NetConnection  -Port 1433

JDBC 連線字串範例

jdbc:sqlserver://:1433;databaseName=;user=;password=;encrypt=false;trustServerCertificate=true;

encrypt=false 適用於內網測試環境;生產環境請啟用加密並匯入憑證。

其他常見坑點

  • 命名實例:若實例名為 SQLEXPRESS,連線字串需加 instanceName=SQLEXPRESS 或使用 host\SQLEXPRESS,並確保 SQL Browser 服務運行。
  • 驅動版本:SQL Server 2008 建議使用 mssql-jdbc-7.4.1.jre8.jar(支援 TLS 1.0/1.1),較新驅動可能預設禁用舊協定導致連線失敗。
  • IPv6 干擾:若 netstat 僅顯示 :::1433,需在 TCP/IP 屬性將 IPv6 關閉或綁定具體 IPv4 位址。

完成上述設定後,Eclipse 的 Database Development 透視圖即可成功建立連線,進行資料庫開發與除錯。

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