JDBC连接SqlServer2000出现"Connection refused: connect"的处理

错误信息如下所示:

java.sql.SQLException:NetworkerrorIOException:Connectionrefused:connect

atnet.sourceforge.jtds.jdbc.ConnectionJDBC2.<init>(ConnectionJDBC2.java:385)

atnet.sourceforge.jtds.jdbc.ConnectionJDBC3.<init>(ConnectionJDBC3.java:50)

atnet.sourceforge.jtds.jdbc.Driver.connect(Driver.java:182)

atjava.sql.DriverManager.getConnection(UnknownSource)

atjava.sql.DriverManager.getConnection(UnknownSource)

attest.Test.main(Test.java:33)

Causedby:java.net.ConnectException:Connectionrefused:connect

atjava.net.PlainSocketImpl.socketConnect(NativeMethod)

atjava.net.PlainSocketImpl.doConnect(UnknownSource)

atjava.net.PlainSocketImpl.connectToAddress(UnknownSource)

atjava.net.PlainSocketImpl.connect(UnknownSource)

atjava.net.SocksSocketImpl.connect(UnknownSource)

atjava.net.Socket.connect(UnknownSource)

atsun.reflect.NativeMethodAccessorImpl.invoke0(NativeMethod)

atsun.reflect.NativeMethodAccessorImpl.invoke(UnknownSource)

atsun.reflect.DelegatingMethodAccessorImpl.invoke(UnknownSource)

atjava.lang.reflect.Method.invoke(UnknownSource)

atnet.sourceforge.jtds.jdbc.SharedSocket.createSocketForJDBC3(SharedSocket.java:304)

atnet.sourceforge.jtds.jdbc.SharedSocket.<init>(SharedSocket.java:255)

atnet.sourceforge.jtds.jdbc.ConnectionJDBC2.<init>(ConnectionJDBC2.java:310)

...5more

处理如下:

一.查看端口信息

使用JDBC在默认端口1433上连接SQLServer获得connectionrefused异常,大致异常信息为:

TheTCP/IPconnectiontothehosthasfailed.java.net.ConnectException:Connectionrefused。

1.使用telnet127.0.0.11433测试,得到如下信息:

正在连接到127.0.0.1...不能打开到主机的连接,在端口1433:连接失败表示1433端口没有

打开

2.检查SQLServer服务已经启动。于是用网络工具扫描端口,发现和SQLServer服务相关的端口

为1109和1434。不过1434为UDP端口,所以当前的连接端口应为1109。可以使用SQLServer的

“服务器实用网络工具”修改默认端口。打开“服务器使用网络工具”后,在“常规”选项

卡中的“启用的协议”列表中,选择“TCP/IP”,然后点击“属性”按钮,就可以看到默认

的端口值。修改后,重启SQLServer服务,即可使用修改后的端口连接服务器。

二.安装更新补丁

注:信息来自互联网

相关推荐