浅谈如何解决JDBC SQL不能连接问题

开发 后端
本文收录了JDBC SQL Server不能连接,报 The Network Adapter could not establish the connection 异常的所有遇到过的原因,并提供了图形化的排查向导。不过根据经验,没有升级到SP4的可能性最高。可以直接看第6部分。

常见的错误为: The Network Adapter could not establish the connection

1 检查JDBC SQL SERVER 是否允许远程访问.

具体步骤:

1)打开"企业管理器",打开控制台根目录>SQL Server 组>数据库

2)在相应"数据库"上单击右键,选择"属性"

选择属性

3)选择"连接"选项卡,检查"远程服务器连接"下,RPC服务是否选择.

远程服务器连接

2 使用telnet IP地址 1433,系统是否提示连接出错

比如 telnet 127.0.0.1 1433

如果出现黑屏,这端口正常

如系统提示出错

检查是否防火墙屏蔽了SQL SERVER 或 java IDE 的网络访问端口

如果是,关闭防火墙,重新启动SQL SERVER和java IDE,进行测试,

如果系统仍提示上述错误,尝试下列步骤

3 检查SQL SERVER 端口号及是否启用了TCP/IP协议

具体步骤:

1)打开"企业管理器",打开控制台根目录>SQL Server 组>数据库

2)在相应"数据库"上单击右键,选择"属性"

3)选择"常规"选项卡,点击"网络配置",如启用的协议中无"TCP/IP协议"将其加入

TCP/IP协议

TCP/IP协议

4)选择"TCP/IP协议",点击"属性",检查其端口号是否为1433

检查其端口号是否为1433




5)如端口号为1433将其修改为其它端口号,修改jdbc连接语句,将端口号同样改为新启用的端口号,如jdbc:microsoft:sqlserver://server_name:1400(假设新端口号为 1400)

4 解决JDBC SQL不能连接问题的方法你每种的去试试:

1)检查一下sql server的connection有没有full.

检查一下sql



2)如果是认证的问题.

可到sql enterprice manager->指定server->内容->安全性. 把验证改为 SQL server 及 windows.

认证的问题

3)点选属性检查一下port是否正确.

4)执行%MSSQL_HOME%\80\Tools\Binn\SVRNETCN.exe 把TCP/IP启用.

5)关掉防火墙.

关掉防火墙

6)把SQL server update到sp4:

http://www.microsoft.com/downloads/details.aspx?displaylang=zh-cn&FamilyID=8E2DFC8D-C20E-4446-99A9-B7F0213F8BC5
经我验证,一般升级到sp4就好用了!

注意升级的方法,不是双击运行就可以了,这个SP4是解压缩程序,你要指定一个目录,推荐c:\,解压缩后,需要转到那个目录运行里面的setup.bat才是真正的安装。不知道为何微软不直接调用那个。搞不懂!!!

检查方法如下:

执行 如下的SQL语句

查看复制到剪切板打印

  1. @@version    
  2. @@version 
如果是SP4 应该出现如下的版本号
引用:
  1. Microsoft SQL Server 2000 - 8.00.2039 (Intel X86)   
  2. [May 3 2005 23:18:38   
  3. Copyright (c) 1988-2003 Microsoft Corporation  


请注意其中的 8.00.2039

其它版本的信息对照如下
SQL Server 2000 版本和级别 @@VERSION 产品级别
SQL Server 2000 原始版本 8.00.194 RTM
Database Components SP1 8.00.384 SP1
Database Components SP2 8.00.534 SP2
Database Components SP3、SP3a 8.00.760 SP3
MSDE 2000 Release A 8.00.760 SP3
Database Components SP4 8.00.2039 SP4

7)最后,请一定注意JDBC2.0和3.0的区别 http://www.java2000.net/viewthread.jsp?tid=367

8) 在SQL Server 2005 里面,如果出现

到主机的 TCP/IP 连接失败。 java.net.ConnectException: Connection refused: connect
sqlserver2005默认情况下是禁用了tcp/ip连接。启动tcp/ip连接的方法, 打开 \Microsoft SQL Server 2005\配置工具\目录下的SQL Server Configuration Manager,选择mssqlserver协议, 然后右边窗口有个tcp/ip协议,然后启动它,把sqlserver服务停了,然后在启动。问题就解决了

记得右键,属性,手工设置IP All里面的TCP 端口为1433 哦!JDBC SQL不能连接问题已经解决。

【编辑推荐】

  1. 谈谈优化JDBC数据库编程
  2. 实例说明对MySQL的JDBC连接设置
  3. 浅谈如何利用JSP网页中JDBC代码连接MySQL
  4. 浅谈JDBC代码如何重复使用
  5. 如何进行Jython数据库插入(JDBC)
责任编辑:彭凡 来源: 和讯博客
相关推荐

2009-07-17 17:41:25

JDBC连接SQL S

2009-07-16 16:23:20

JDBC result

2009-07-15 15:18:01

JDBC连接SQL S

2009-07-06 17:50:13

Java JSP

2011-05-06 15:56:38

打印机故障

2011-03-29 13:29:10

2011-05-17 13:22:50

SQL对象名无效

2009-07-23 13:37:45

JDBC连接SQL S

2009-07-22 13:49:40

JSP JDBC

2012-09-05 11:09:15

SELinux操作系统

2009-12-02 13:30:30

2011-03-15 13:30:27

IBatis.netMySQL

2010-11-09 11:07:18

2020-05-31 18:55:47

远程桌面连接网络故障虚拟桌面

2011-03-07 14:09:10

FileZilla

2010-10-08 11:41:38

PHP连接MYSQL

2024-10-15 09:25:08

JDBCMybatis数据库

2009-07-15 17:00:49

JDBC查询

2010-04-29 17:46:31

Oracle死锁

2009-07-22 14:30:53

JDBC连接池
点赞
收藏

51CTO技术栈公众号