`

总结JDBC连接SQLServer的错误Error establishing socket

阅读更多
在用MSSQL连接数据库的过程中,经常会遇见“Error establishing socket.”的错误,大概得错误日志信息如下:

java.sql.SQLException : [Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket. 
	at com.microsoft.jdbc.base.BaseExceptions.createException(Unknown Source) 
	at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source) 
	at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source) 
	at com.microsoft.jdbc.sqlserver.tds.TDSConnection.<init>(Unknown Source) 
	at com.microsoft.jdbc.sqlserver.SQLServerImplConnection.open(Unknown Source) 
	at com.microsoft.jdbc.base.BaseConnection.getNewImplConnection(Unknown Source) 
	at com.microsoft.jdbc.base.BaseConnection.open(Unknown Source) 
	at com.microsoft.jdbc.base.BaseDriver.connect(Unknown Source) 
	at java.sql.DriverManager.getConnection( DriverManager.java:523 ) 
	at java.sql.DriverManager.getConnection( DriverManager.java:171 ) 
	at test.SqlServerTest.main( SqlServerTest.java:29 ) 

我在网上查询到问题解决的方式有大概如下 种:
一 配置错误
    jdbc配置语句为: jdbc:microsoft:sqlserver://server_name:1433
其中的sqlserver、server_name和端口号都要看仔细了。
二 1433端口问题
    可以通过命令“netstat -an”,来查看是否开了1433端口,如果列表中没有,要增开端口。
    要保持jdbc配置语句( jdbc:microsoft:sqlserver://server_name:1433)中的端口与数据库传输协议默认的端口相同。
MSSQL设置端口号步骤如下:
1.  打开企业管理器,依次在控制台根目录 ->Microsoft SQL Servers->SQL Server 组,列出一部分数据库服务器。
2.  右击我们要连接的数据库服务器,选择属性,在常规选项卡点击网络配置弹出新窗口。
3.  在启用的协议区域我们选择 TCP/IP ,点击属性按钮,弹出新窗口。在这个窗口有网络协议默认值设置,一般默认端口是:1433。 如果你在url中用的端口号与这个不同,就会出现错误。应保持二者相同。
三 没打补丁
   可以用如下的方式查看MSSQL的版本:
打开企业管理器-〉工具-〉SQL查询分析器-〉帮助-〉关于
查看MSSQL的详细版本号
如果 是  8.00.194  就是还没打补丁
       8.00.760  就是SP3
        8.00.2039 就是SP4

1、下载MSSQL 2000  Service  Pack  3a并安装,SQL请选用混和安装模式!!! 
http://www.microsoft.com/downloads/details.aspx?FamilyId=90DCD52C-0488-4E46-AFBF-ACACE5369FA3&displaylang=zh-cn 
   解压缩sp3的升级包后,还要点击setup安装.才能成功升级到sp3。  
2、下载SQL  Server  2000  Driver  for  JDBC  Service  Pack  3 
http://www.microsoft.com/downloads/details.aspx?FamilyId=07287B11-0502-461A-B138-2AA54BFDC03A&displaylang=en
四 系统防火墙或者杀毒软件
    如果系统开防火墙或者杀毒软件,在有些情况下也可以出现类似的问题。
没有遇见过,有人这么说。

可能我查询的未必全面,如果你的解决方式不同,可以给我留言,一起完善其解决方法.


参考文献:
1 http://dev.csdn.net/article/70/70360.shtm
2 http://blog.chinaunix.net/u/20532/showart_289640.html
3 http://dev2dev.bea.com.cn/bbs/thread.jspa?forumID=81&threadID=29250&messageID=175704
4
1
分享到:
评论
1 楼 huoxp007 2008-04-24  
写的很不错

相关推荐

    JDBC连接SQL Server 2008问题

    - **错误信息**:“java.sql.SQLException:[Microsoft][SQL Server 2000 Driver for JDBC] Error establishing socket.” - **解决办法**: - 将SQL Server升级至SP3或更高版本。 - 开启1433端口,确保TCP/IP连接...

    数据库驱动常见错误"java.lang.ClassNotFoundException:解决了jsp连接Error establishing socket.

    "java.lang.ClassNotFoundException: com.microsoft.jdbc.sqlserver.SQLServerDriver" ...[Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket. 解决了jsp连接 sql server 2000的问题

    java 连接sql server数据库

    如果提示错误"Error establishing socket",请根据之前的说明安装相应的 SQL Server 2000 补丁即可。如果提示"ClassNotFoundException",那一定是 Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver"); ...

    sqlserver2000连接jdbc时出现

    对于很多初学者而言,在尝试使用 SQL Server 2000 通过 JDBC 驱动连接数据库的过程中经常会遇到一个常见的错误:“[Microsoft][SQL Server 2000 Driver for JDBC] Error establishing socket.” 即使安装了 SP3 补丁...

    Eclipse连接SQL SERVER 2000主要操作及可能遇到的问题

    - **网络问题**:如果"Error establishing socket"错误持续出现,检查SQL Server服务是否正在运行,以及防火墙设置是否允许连接到1433端口。 - **权限问题**:在连接字符串中使用的用户名和密码需要具有访问数据库的...

    解决XP不能用JDBC不能连接数据库的问题

    java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket. at com.microsoft.jdbc.base.BaseExceptions.createException(Unknown Source) at ...

    jsp连接SQL server 2000经验总结

    2. **SQLException错误**:“[Microsoft][SQL Server 2000 Driver for JDBC] Error establishing socket.” - 此错误通常意味着无法与SQL Server建立连接。 - 检查SQL Server服务是否正常启动。 - 确认网络配置...

    eclipse安装JDBC(SQL2000)

    - 在 Eclipse 中建立 JDBC 连接时,可能会出现 “Error establishing socket” 的错误。这通常是因为 SQL Server 没有正确配置远程访问功能或 Eclipse 无法识别 SQL Server 的 TCP/IP 端口。 - 检查 SQL Server ...

    Java连接SQL Server 2000.pdf

    - **错误建立套接字**: 在程序运行时如果遇到“Error establishing socket”的错误,通常可以通过安装SQL Server 2000的最新补丁来解决。 #### 四、Java与SQL Server 2000的连接 1. **JDBC驱动**: 需要下载并安装...

    Java连接SQL_Server_2000.pdf

    如果出现"Error establishing socket"错误,安装SQL Server 2000的补丁可能能解决问题。对于其他错误,可以根据异常信息进行诊断和修复。 9. **连接方法选择**: 连接数据库有多种方式,包括使用`DriverManager.get...

    sql server 2000安装问题集

    **问题描述**:安装后尝试通过 JDBC 连接到 SQL Server 2000 数据库时出现“建立套接字连接时发生错误”(Error establishing socket)。 **解决方案**: - 确认服务器是否完全启动:打开 SQL 企业管理器,检查服务器...

    Java连接SQL 2000的基本步骤和程序实例.doc

    这有助于解决潜在的连接问题,例如“Error establishing socket”错误,有时可以通过应用这些补丁来解决。 接下来,加载JDBC驱动是连接数据库的关键步骤。使用`Class.forName()`方法,传入驱动类的全限定名(包名+...

    java连接常用数据库示例

    这可以解决某些连接问题,例如“Error establishing socket”错误。 3. **加载驱动**: 使用 `Class.forName()` 方法加载 JDBC 驱动。对于 SQL Server 2000,驱动类全名为 `...

    JAVA连接sql2005.pdf

    然而,如果出现任何问题,比如“Error establishing socket”等错误,您可能需要检查网络连接或者JDBC驱动是否正确安装和配置。 以上步骤详细介绍了如何在Java环境中配置并使用JDBC驱动连接Microsoft SQL Server ...

    如何解决java中出现的端口不能成功连接的问题

    你编写java程序出现了如下的错误提示【[Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket】

    sql连库 很实用

    准备环境 Windows XP+JDK5.0+Microsoft SQL Server 2000个人版+JCreator(或Eclipse) 下载数据库驱动程序SQL Server 2000 Driver for JDBC Service Pack 3.exe...1、是不是出现了Error establishing socket之类的错误

    java连接不上数据库

    如果在测试连接 SQL Server 2000 J时,出现Error establishing socket错误,可以尝试以下解决方法: 1. 检查数据库服务器的端口号是否打开。 2. 检查驱动类的jar包是否正确配置。 3. 检查驱动类的路径是否正确设置...

    检查本地TCPIP端口1433是否被监听

    在日常工作中,我们可能会遇到类似`java.sql.SQLException: [Microsoft][SQL Server 2000 Driver for JDBC] Error establishing socket`这样的异常。这类错误通常发生在试图通过Java应用程序连接到SQL Server数据库...

    WEB-INF中的web.xml中之前增加以下配置:

    除了开放1433端口外,还要升级数据库到SP3或SP4,否则连接会发出SQLNestedException:Cannot create PoolableConnectionFactory ([Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket错误。

Global site tag (gtag.js) - Google Analytics