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

无法使用Java 8(Zulu 8u332)连接SQL Server 2014的问题求助

解决Java 8 Zulu 8u332连接MSSQL Server 2014的TLS版本兼容问题

问题背景

使用Zulu 8u332(Java 8)开发的应用连接未启用SSL的MSSQL Server 2014时,出现以下错误:

The driver could not establish a secure connection to SQL Server by using Secure Sockets Layer (SSL) encryption. Error: "The server selected protocol version TLS10 is not accepted by client preferences [TLS13, TLS12]"

且无法通过在数据库端启用TLS1.2或应用端启用TLS1.0来解决。

可行解决方案

  • 显式禁用JDBC连接的SSL加密
    即使数据库未启用SSL,部分版本的Microsoft JDBC Driver for SQL Server会默认尝试发起SSL连接,从而触发TLS版本协商。在数据库连接URL中添加encrypt=false参数,强制驱动不使用SSL加密,绕过TLS版本校验:

    jdbc:sqlserver://<你的数据库地址>:1433;databaseName=<数据库名>;encrypt=false
    

    该方案无需修改JVM或数据库的TLS配置,直接通过连接参数解决版本冲突。

  • 匹配兼容的JDBC驱动版本
    确保使用的Microsoft JDBC Driver版本与Java 8、MSSQL Server 2014兼容,推荐使用7.4.x版本(该版本原生支持Java 8,对MSSQL 2014的适配性更稳定),避免因驱动版本过旧导致的异常SSL连接逻辑。

内容的提问来源于stack exchange,提问作者java-dev

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.20 20:36:38