com.microsoft.sqlserver.jdbc.SQLServerException: 驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立 安全连接。

@TOcom.microsoft.sqlserver.jdbc.SQLServerException: 驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立 安全连接。C

com.microsoft.sqlserver.jdbc.SQLServerException: 驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立 安全连接。

com.microsoft.sqlserver.jdbc.SQLServerException: 驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立 安全连接。错误:The server selected protocol version TLS10 is not accepted by client preferences [TLS12]
最近在项目中使用了SqlServer数据库,但是在实际操作中遇到了上述的问题。

1.问题描述:

在搭建完项目之后,然后使用vpn能连接上目标数据库,并没有发生错误。但是当将服务部署到服务器上之后就发生了如上的错误。

2.问题分析

1.首先看问题描述,发现是驱动加密与SqlServer出现了问题。说明可能是SqlServer数据库驱动与对方的数据库版本不一致导致的。但是根据我实际操作在我本地使用该驱动并没有出现报错,部署到服务器上才出现报错,这说明并不是数据库驱动和数据库版本不一致导致的。
2.后面去百度发现SqlServer数据库驱动必须和jdk的版本对应上,然后我在本地的jdk和服务器上的jdk都是同样的1.8版本,但是具体的小版本不一样。这个问题排除。
3. 在分析这个报错,发现是TLS10这个协议无法向上兼容TLS12这个协议的问题。

3.问题确定

TLS10这个协议无法向上兼容TLS12这个协议。

4.问题解决方案

注意这里是linux下的解决具体方案,在window下自己去找jdk\jre\lib\security这个目录。

4.1.找到自己的jdk安装目录命令。

echo $JAVA_HOME

4.1.找到自己的jre\lib\security安装目录下的java.security。

4.2、在java.security文档中搜索jdk.tls.disabledAlgorithms

修改配置前的图片

4.3 删除标红的内容(TLSv1、TLSv1.1、3DES_EDE_CBC)

修改配置后的图片

4.5重启服务

重启服务就解决报错了。

参考博客:参考博客
参考网站:参考网站

  • 9
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值