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

Teradata 連接報錯 10061:服務器拒絕連接的排查清單

     編輯:程式設計綜合問答

錯誤含義

10061 WSAECONNREFUSED:TCP 連接請求到達目標主機,但目標端口無進程監聽,或被防火牆/安全組顯式拒絕(發送 RST 包)。

排查步驟(由近及遠)

  1. 確認 Teradata 服務是否運行
    • Windows:services.msc 查找 Teradata Database / Teradata Listener 狀態為「運行中」。
    • Linux:systemctl status teradata 或 pdestate -a。
  2. 確認監聽端口
    • 默認端口:1025 (Teradata Director Program) / 23 (Telnet) / 3100 (ODBC/JDBC)。
    • 命令:netstat -an | findstr :1025 (Win) / ss -ltnp | grep 1025 (Linux)。
  3. 防火牆/安全組
    • Windows 防火牆:入站規則允許 TCP 1025/3100。
    • 雲服務器安全組:入方向放行對應端口。
    • 虛擬機網絡模式:NAT 模式需端口映射;橋接模式需宿主機防火牆放行。
  4. Teradata 訪問控制
    • DBC.Hosts 表:檢查客戶端 IP 是否在允許列表。
    • GRANT LOGON 權限:用戶是否有 LOGON 權限。
    • IPv6 vs IPv4:確保客戶端與服務端協議棧一致。
  5. 客戶端配置
    • Teradata Administrator / SQL Assistant → 連接配置:IP/主機名、端口、機制 (TD2/KRB5/LDAP)。
    • 驅動版本匹配:JDBC/ODBC 驅動版本與服務端兼容。

虛擬機環境特有檢查

項目操作
網絡模式 建議「橋接模式」獲取獨立 IP,或「NAT + 端口轉發」映射 1025/3100
宿主機防火牆 允許 VMware/VirtualBox 進程通信,或關閉宿主機防火牆測試
SELinux/AppArmor Linux 客體機:setenforce 0 臨時關閉測試

快速驗證命令

# 1. 測試 TCP 連通性
telnet  1025
# 或
nc -zv  1025

# 2. 抓包確認 RST
wireshark -f "tcp.port == 1025"
# 觀察 SYN → RST/ACK 即為服務端拒絕

常見誤區

以為是賬號密碼錯誤
10061 是連接建立失敗,尚未進入認證階段。認證失敗通常返回 8017/8021。
忽視 IPv6
Teradata 可能只綁定 IPv4,客戶端解析到 IPv6 導致連接失敗 → 在 hosts 強制指定 IPv4 或啟用 IPv6 監聽。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved