You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SQL Server与Java建立连接报错:已启用TCP/IP仍提示主机连接失败

SQL Server JDBC 连接失败解决方案
  • 端口监听校验
    打开命令提示符执行netstat -ano | findstr 1433,确认SQL Server默认1433端口处于监听状态。如果无返回结果,进入SQL Server配置管理器→对应实例的TCP/IP属性→IP地址选项卡,拉至底部将IPAll的TCP端口设置为1433,保存后重启SQL Server服务。
  • 主机名解析校验
    本地执行ping csci331-server,确认可正常解析到SQL Server所在服务器的IP,解析失败时直接将连接串中的主机名替换为实际IP即可。
  • 防火墙拦截校验
    确认SQL Server所在服务器防火墙已开放1433端口入站规则,也可临时关闭两端防火墙测试连接,排除拦截问题。
  • 连接串参数修正
    高版本SQL Server JDBC驱动默认要求加密连接,且数据库标识参数为DatabaseName,同时建议显式指定端口,修正后的代码示例如下:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class Driver {
    public static void main(String[] args) {
        // 修正后的连接串:显式加端口、用DatabaseName参数、关闭加密验证
        String connectionString = "jdbc:sqlserver://csci331-server:1433;DatabaseName=TSQLV4;IntegratedSecurity=true;encrypt=false";
        try {
            try(Connection connection = DriverManager.getConnection(connectionString)){
                System.out.println("Connection Established");
            }
        }catch(SQLException e) {
            System.out.println("Error connection to the database");
            e.printStackTrace();
        }
    }
}
  • 集成身份验证依赖校验
    使用IntegratedSecurity=true时,需要将对应版本的sqljdbc_auth.dll文件放入JDK的bin目录,或在Eclipse运行配置的VM参数中添加-Djava.library.path=<dll文件所在文件夹路径>,否则会因缺少依赖导致连接失败。

内容的提问来源于stack exchange,提问作者Mahima Thakur

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 18:36:03