日期:2014-05-16  浏览次数:20534 次

JDBC 到主机 的 TCP/IP 连接失败。

在做JDBC连接SQL 2005数据库的时候,出现下面的异常:

com.microsoft.sqlserver.jdbc.SQLServerException: 到主机? 的 TCP/IP 连接失败。 java.net.ConnectException: Connection refused: connect
?at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(Unknown Source)
?at com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(Unknown Source)
?at com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(Unknown Source)
?at java.sql.DriverManager.getConnection(Unknown Source)
?at java.sql.DriverManager.getConnection(Unknown Source)
?at com.taoyi.util.ConnDB.getConnection(ConnDB.java:35)
?at com.taoyi.util.ConnDB.main(ConnDB.java:88)

?

出现上面的异常时比较常见的,解决的思路如下:

1、查看代码本身的问题,特别是driver、URL、DatabaseName、登录名、密码是否出错(这个也就是你本身的问题)

如下:

driver="com.microsoft.sqlserver.jdbc.SQLServerDriver";
url="jdbc:sqlserver://127.0.0.1:1433;DatabaseName=youDBName";
username="sa";//sa用户登录
password="sa";//sa密码

?

2、检查你的TCP/IP、Named Pipes 协议是否启动、TCP/IP的端口是不是1433:

启动方式如下:

配置工具--》SQL Server Configuration Manager--》SQL Server 2005 网络配置--》MSSQLSERVER 的协议--》启动TCP/IP、Named Pipes 协议(有启动的话,重新启动下也可以)

?

查看TCP/IP的端口--》右击TCP/IP--》属性IP地址--》检查端口时不是1433不是的话改成1433(IP、IP2、IPALL)--》确定

?

3、服务和连接的外围应用配置器的远程连接是否选中本地连接和远程连接中的同时使用TCP/IP和Named Pipes

?

设置的方法如下:

配置工具--》SQL Server 外围应用配置器--》服务和连接的外围应用配置器--》MSSQLSERVER --》远程连接--》同时使用TCP/IP和Named Pipes

?

?

经过上面的检查跟配置就可以成功的连接数据库了、、、、

?

?

?