我有一个新的DB2服务器(v10.5.0.3),可以很好地连接到本地数据库。
当我尝试使用JDBC从远程服务器连接时,收到“Connection refused. ERRORCODE= -4499,SQLSTATE=08001”错误。根据此处找到的信息https://www-304.ibm.com/support/docview.wss?uid=swg21403644,我已确认
[db2inst1@db2 ~]$ db2set -all
[i] DB2COMM=TCPIP
[i] DB2AUTOSTART=YES
[g] DB2SYSTEM=db2.xxxx.com
[g] DB2INSTDEF=db2inst1
[g] DB2ADMINSERVER=xxxxxx
和
[db2inst1@db2 ~]$ db2 get database manager configuration | grep -i svce
TCP/IP Service name (SVCENAME) = 50001
SSL service name (SSL_SVCENAME) =
使用这些JDBC连接值
driver=com.ibm.db2.jcc.DB2Driver
url=jdbc:db2://db2.xxxxx.com:50001/TESTGEN
username=XXXXXXXX
password=XXXXXXX
我已经验证了两台服务器上的防火墙都打开了端口50000和50001。我已经黔驴技穷了,任何帮助都非常感谢。
3条答案
按热度按时间3b6akqbq1#
我遇到了同样的问题...这是由IPV6引起的...指向localhost的URL连接点,解析为::1(localhost的IPV6地址),DB2服务器没有列出IPV6协议。
我通过修改c:\windows\system32\driver\etc\host文件解决了此问题:我取消了对www.example.com locahost行的注解127.0.0.1,以强制使用localhost的ipv4解析名称...它可以正常工作。
我希望这能帮上忙。(抱歉我的英语)
biswetbf2#
我遇到了同样的问题,当我无法使用Data Studio Client和DB2 CLP控制台连接到我的远程数据库时。请确保您检查了ping到您的服务器并且成功,您检查了dbm cfg并且知道svcename,tcpip端口号,您检查了..System32\drivers\etc\services文件,该文件中有“svcename**tcpip_port_number/tcp”。因此,当您在db2diag.log中看到消息““TCPIP”协议支持已成功启动"时,这不是网络问题。我打开了我的服务器上的端口mashine:DB2服务器tcpip端口(svcename)和DB2 DAS tcpip端口通过防火墙设置。我在这个参考https://learn.microsoft.com/en-us/sql/reporting-services/report-server/configure-a-firewall-for-report-server-access?view=sql-server-ver16上找到了帮助。要小心,并向您的系统管理员咨询有关安全的问题。
(* 抱歉我的英语 *)))
omhiaaxx3#
这确实是一个网络错误。我不完全确定哪个修复是最重要的,但我确保telnet被启用,并在RHEL防火墙配置中将DB2进程列入白色名单。