`
yeshaoting
  • 浏览: 684534 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

[转载]通过端口 1433 连接到主机 localhost 的 TCP/IP 连接失败。错误:“Connection refused: connect。

 
阅读更多

 

 

 

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程序, 这次就是我想要的结果 了!!!!

http://apps.hi.baidu.com/share/detail/3380813

  • 大小: 34 KB
  • 大小: 59.3 KB
  • 大小: 52.8 KB
  • 大小: 49.5 KB
  • 大小: 34.9 KB
分享到:
评论
2 楼 乔木1937 2015-08-02  
太感谢了,看到你的文章终于解决这个问题了! 
1 楼 Javkburd 2014-04-03  
我刚也遇到这个问题,然后也把默认端口改成了1433,只差最后没有重启服务。现在好了,谢谢你啊。

相关推荐

Global site tag (gtag.js) - Google Analytics