1. TCP/IP 连接失败
1.1 问题描述
连接 SQL Server 时常常会遇到报错提示:com.microsoft.sqlserver.jdbc.SQLServerException: 到主机的 TCP/IP 连接失败。
1.2 解决方案
1.2.1 检查 URL 是否正确
首先确认在定义数据连接那边的 URL 是否正确(保证 IP,端口以及数据库是正确的),如下图所示:
去除后面的 databaseName,测试是否成功,如果成功,则问题来源于后面的实例名,否则问题是前面的 TCP/IP 连接。
1.2.2 检查实例名是否一致
检查数据库实例名是否与 URL 中的 databaseName 一致。
1.2.3 是否允许远程连接服务器
1.2.4 检查用户状态
1.2.5 检查 TCP/IP 协议是否启动
1.2.6 检查数据库服务是否启动
1.2.7 检查网络配置
打开 SQL server 配置管理器,检查 SQL server 网络配置是否启用 Named Pipes 和 TCP/IP 。
1.2.8 查看对应的端口号是否正确
双击 TCP/IP 或右键-属性查看对应的端口号是否正确。
1.2.9 确认是否安装 sp4
这个主要是 SQL server 2000,其他版本一般没有这个问题。sqlsp4 补丁就是 Microsoft SQL Server 2000 Service Pack 4 ,大多数版本为简体中文版。
sp4 包括用于以下 SQL Server 2000 组件的程序包。点击此处链接:官方下载各组件。
数据库组件(下载文件:SQL2000-KB884525-SP4-x86.EXE):更新 SQL Server 2000 的 32 位数据库组件,包括数据库引擎、复制、客户端连接组件和工具。
Analysis Services 组件(下载文件:SQL2000.AS-KB884525-SP4-x86.EXE):更新 SQL Server 2000 的 32 位 Analysis Services 组件。
SQL Server 2000 Desktop Engine (MSDE) 组件(下载文件:SQL2000.MSDE-KB884525-SP4-x86.EXE):对于 SQL Server 2000 的 32 位 MSDE 组件:
安装新的 MSDE 实例;
升级现有 MSDE 实例;
更新使用合并模块的应用程序。
打 sp4 后一般会出现登录连接问题,看看SQL的服务有没有运行,没运行就去我的电脑>管理>服务里面,把 MSSQLSERVER 服务登录的用户名和密码改正确;有运行,进企业管理器,改 SQL 的登录方式为混合模式,设置sa密码,重新设置一次。 sqlserver 2000 sp3由于有 bug,很多服务器打不了补丁,说sa连接失败,所以直接安装 sp4 升级补丁,升级之前建议先备份数据库。