数据库连接失败的原因有多种。包括下列原因:
    *SQL Server 无法启用 TCP/IP,或者指定的服务器或端口号不正确。验证 SQL Server 是否正通过指定服务器和端口上的 TCP/IP 进行侦听。系统可能会报告这种情况,并引发类似于“登录已经失败。对主机的 TCP/IP 连接已失败。”的异常。这指示下列内容之一:
    *已安装了 SQL Server,但并没有针对 SQL Server 将 TCP/IP 作为网络协议进行安装(通过使用 SQL Server 2000 的 SQL Server 网络实用工具,或者使用 SQL Server 2005 的 SQL Server 配置管理器)。
    *已作为 SQL Server 协议安装了 TCP/IP,但是它并没有侦听 JDBC 连接 URL 中指定的端口。默认端口为 1433,但可以在安装产品时将 SQL Server 配置为侦听任意端口。请确保 SQL Server 正在侦听端口 1433。或者,如果端口已更改,则应确保 JDBC 连接 URL 中指定的端口与更改的端口相匹配。有关 JDBC 连接 URL 的详细信息,请参阅创建连接 URL。
    *JDBC 连接 URL 中指定的计算机地址没有引用在其中安装并启动了 SQL Server 的服务器。
    *无法执行客户端和运行 SQL Server 的服务器之间的 TCP/IP 的网络操作。可以使用 telnet 检查 TCP/IP 与 SQL Server 的连接性。例如,在命令提示符下,键入 telnet 192.168.0.0 1433 ,此处 192.168.0.0 是运行 SQL Server 的计算机地址,而 1433 是其侦听的端口。如果收到“Telnet 无法连接”的消息,则 TCP/IP 没有侦听 SQL Server 连接的端口。对 SQL Server 2000 使用 SQL Server 网络实用工具,或者对 SQL Server 2005 使用 SQL Server 配置管理器,以确保将 SQL Server 配置为在端口 1433 使用 TCP/IP。
    *未在防火墙中打开服务器使用的端口。这包括服务器使用的端口或与该服务器的指定实例相关联的端口(可选)。
    *指定的数据库名称不正确。确保所登录的 SQL Server 数据库是现有的数据库。
    *用户名或密码不正确。确保提供正确的值。
    *使用 SQL Server 身份验证时,JDBC 驱动程序要求安装带有 SQL Server 身份验证的 SQL Server,但在默认情况下,系统不会安装带有此功能的组件。在安装或配置 SQL Server 实例时,应确保带有此选项。
posted on 2008-05-14 22:47  李小鱼  阅读(2660)  评论(0编辑  收藏  举报