ERROR:通过端口 1433 连接到主机 localhost 的 TCP/IP 连接失败。错误:“Connection refused:
connect。请验证连接属性,并检查 SQL Server 的实例正在主机上运行,且在此端口接受
TCP/IP
连接,还要确保防火墙没有阻止到此端口的
TCP
连接。”。
最近要学数据库,
老师用的是microsoft sqlserver
2005, 我是学java的, 一直都 JDBC来连oracle数据库的,这次我装了
microsoft
sqlserver 2005,想用 JDBC 来连 microsoft sqlserver
2005, 没想出了这样的问题:
com.microsoft.sqlserver.jdbc.SQLServerException:通过端口
1433
连接到主机 localhost
的 TCP/IP
连接失败。错误:“Connection refused:
connect。请验证连接属性,并检查
SQL
Server
的实例正在主机上运行,且在此端口接受
TCP/IP
连接,还要确保防火墙没有阻止到此端口的
TCP
连接。”。
at
com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:171)
at
com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(SQLServerConnection.java:1033)
at
com.microsoft.sqlserver.jdbc.SQLServerConnection.login(SQLServerConnection.java:817)
at
com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(SQLServerConnection.java:700)
at
com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.java:842)
at
java.sql.DriverManager.getConnection(DriverManager.java:582)
at
java.sql.DriverManager.getConnection(DriverManager.java:185)
at
com.luoying.TestSQLServer2.main(TestSQLServer2.java:15)
我的代码如下:
import
java.sql.*;
public class
TestSQLServer2 {
public static
void main(String[] args) {
Connection ct = null;
Statement sm = null;
ResultSet rs = null;
try {
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
ct =
DriverManager.getConnection("jdbc:sqlserver://localhost;database=bbs;","sa","62280789");
sm = ct.createStatement();
rs = sm.executeQuery("select * from stu");
while(rs.next()) {
System.out.println(rs.getString(1));
}
}catch (Exception e) {
e.printStackTrace();
}finally {
try {
if(rs != null) {
rs.close();
rs = null;
}
if(sm != null) {
sm.close();
sm = null;
}
if(ct != null) {
ct.close();
ct = null;
}
}catch (Exception e) {
e.printStackTrace();
}
}
}
}
近两天都
在网上搜索,加上自己的一点点探索,
终于把问题解决了!但是这两天的郁闷
无处发泄,所以就把它写下来让自己回味!!
如有雷同,纯属巧合!
解决方法
如下
:
从“开始”里的“所有程序” 里打开 “microsoft sqlserver
”的 SQL Server Configuration
Manager,
跳出这个窗口
然后我就查看了
SQL
Server 2005 网络配置,
下面有个
MSSQLSERVER
的协议,
我一看右边
的那个
TCP/IP
竟然是
禁用
状态
,
当时我就想
应该是这里出来问题,
我就把它给启用了。
启用前:
启用后:
然后我又去看了一下
SQL
Nativer Client 配置下的东东,查看了
这样我就确保了端口是
1433
,
并已经打开了……
然后我就把
SQL
Server(MSSQLSERVER) 服务
重启了!
然后再运行我的JAVA程序,
这次就是我想要的结果
了!!!!
|