com.microsoft.sqlserver.jdbc.SQLServerException: 到主机 的 TCP/IP 连接失败。 java.net.ConnectException: Connection refused: connect
2015-12-28 21:09
831 查看
问题描述:最简单的数据库连接报错,到主机 的 TCP/IP 连接失败。(win 7 操作系统)
错误信息:
com.microsoft.sqlserver.jdbc.SQLServerException: 到主机 的 TCP/IP 连接失败。 java.net.ConnectException: Connection refused: connect
解决方式:
安装SQL Server 2008后。在目录下找到SQL Server Configuration Manager这个工具,然后在左边的目录中找到SQL Server 2008网络配置下的MSSQLSERVER,点击后右侧列出了所有协议,找到TCP/IP,发现是禁用状态,启用后再重启MSSQLSERVER服务即可(此步骤必须!),此项可在该工具下的SQL Server 2008服务中找到,或在windows服务中找到。
可能的其他解决方式:
网上有许多答案是TCP端口不是1433,查看真实的端口并在代码中修改即可。 可在SQL Server 2008网络配置下的MSSQLSERVER,点击后右侧列出了所有协议,找到TCP/IP,双击,找到IP地址,里面有IP地址和端口号修改。
错误信息:
com.microsoft.sqlserver.jdbc.SQLServerException: 到主机 的 TCP/IP 连接失败。 java.net.ConnectException: Connection refused: connect
package sqlconnect; import java.sql.*; public class sqlconnect { public static void main(String[] args) { String user = "zcj"; String password = "123"; String url = "jdbc:sqlserver://localhost:1433;DatabaseName=lol"; String driver = "com.microsoft.sqlserver.jdbc.SQLServerDriver"; String tableName = "lol"; String sqlstr; Connection con = null; Statement stmt = null; ResultSet rs = null; try{ Class.forName(driver); con = DriverManager.getConnection(url,user,password); stmt = con.createStatement(); sqlstr = "insert into " + tableName + " values('333','333')"; stmt.executeUpdate(sqlstr); sqlstr = "select * from " + tableName; rs = stmt.executeQuery(sqlstr); ResultSetMetaData rsmd = rs.getMetaData(); int j = 0; j = rsmd.getColumnCount(); for(int k=0;k<j;j++){ System.out.print(rsmd.getColumnName(k+1)); System.out.print("/t"); } System.out.println(); while(rs.next()){ for(int i=0;i<j;i++){ System.out.print(rs.getString(i+1)); System.out.print("/t"); } System.out.println(); } } catch(ClassNotFoundException e1){ System.out.println("数据库驱动不存在"); System.out.println(e1.toString()); } catch(SQLException e2){ System.out.println("数据库存在异常"); System.out.println(e2.toString()); } finally{ try{ if(rs != null) rs.close(); if(stmt != null) stmt.close(); if(con != null) con.close(); } catch(SQLException e){ System.out.println(e.toString()); } } } }
解决方式:
安装SQL Server 2008后。在目录下找到SQL Server Configuration Manager这个工具,然后在左边的目录中找到SQL Server 2008网络配置下的MSSQLSERVER,点击后右侧列出了所有协议,找到TCP/IP,发现是禁用状态,启用后再重启MSSQLSERVER服务即可(此步骤必须!),此项可在该工具下的SQL Server 2008服务中找到,或在windows服务中找到。
可能的其他解决方式:
网上有许多答案是TCP端口不是1433,查看真实的端口并在代码中修改即可。 可在SQL Server 2008网络配置下的MSSQLSERVER,点击后右侧列出了所有协议,找到TCP/IP,双击,找到IP地址,里面有IP地址和端口号修改。
相关文章推荐
- http学习01
- 15.cocos2d-x网络编程一(get、post请求)
- TCP/IP、Http的区别
- TCP聊天系统开发心得
- .NET中使用HTTP 进行POST 数据
- Python---httplib2
- Python---httplib2
- Python---http
- Python---http
- Socket通讯TCP/UDP粘包,多包和断包、少包问题解读
- 在Android Studio上使用GSON+VOLLEY,秒处理网络数据成集合。感受框架的力量。搭配RecyclerView和SwipeRefreshLayout,实现底端加载更多,下拉刷新。
- android客户端加载网络大图片如何避免内存溢出的两种方法
- HP刀片服务器系统Flex-10 VC配置与VMware vSphere网络设计
- 智能家居网络系统的设计(一)
- http post 请求(下)
- http post请求(上)
- 全站 HTTPS 来了
- Objective-c语言_计算机网络和URL(代码1)
- java中的TCP客户端与服务器
- 使用Let's Encrypt手动创建https证书