The server selected protocol version TLS10 is not accepted by client preferences [TLS12]

JDBC连接SQLService时报错误:“驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接”

最近在服务器部署服务时,在启动服务时报了这个错:

图片[1]-The server selected protocol version TLS10 is not accepted by client preferences [TLS12]-深吸氧

当时在网上查找了几个解决办法:

1.修改jre\lib\security\java.security,删除jdk.tls.disabledAlgorithms中的3DES_EDE_CBC

2.把 jdk.tls.disabledAlgorithms 配置项中 TLSv1 删除,这样  TLS1.0 就可以使用了

我就把这几个方法都试了一遍,但是都没能把问题解决。因为服务客户第二天要用,当时已经晚上11点半了,所以也比较急躁,也没想到别的情况。而且看评论好多人说这几个方法有用,我觉得是不是自己没改对,从11点半一直搞到凌晨2点还是没把问题解决。

因为我本地开发服务启动是没问题,所以就怀疑是不是jdk的原因。然后我就把服务器jdk换成了跟我本地一样的版本,但是通过java -version一查jdk版本,显示的并不是我配置的版本。

图片[2]-The server selected protocol version TLS10 is not accepted by client preferences [TLS12]-深吸氧

然后仔细一检查环境变量的配置,终于发现了问题。

8bfe93a7e7806b81e62a8c36c736a3ef.png

原来在path的最前段多了这个配置:C:\ProgramData\Oracle\Java\javapath。这是jdk1.8自动为我们配置的环境变量,然后自动添加到我们的系统环境配置中,覆盖了我们原先的配置。把这个配置删除后程序就能成功启动了。

© 版权声明
THE END
请撒泡尿证明你到此一游
点赞13 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容