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

部署项目的时候碰到一个特别头疼的问题,折腾了老娘一个礼拜才搞定,特此修文一篇,先把错误代码贴过来:

Caused by: com.microsoft.sqlserver.jdbc.SQLServerException: 驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立 安全连接。错误:“SQL Server 未返回响应。连接已关闭。

ClientConnectionId:97db0745-84f1-4f4e-92a8-6fbe5b2e51d9”。
        at com.microsoft.sqlserver.jdbc.SQLServerConnection.terminate(SQLServerConnection.java:2397)
        at com.microsoft.sqlserver.jdbc.TDSChannel.enableSSL(IOBuffer.java:1762)
        at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(SQLServerConnection.java:1977)
        at com.microsoft.sqlserver.jdbc.SQLServerConnection.login(SQLServerConnection.java:1628)
        at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectInternal(SQLServerConnection.java:1459)
        at com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(SQLServerConnection.java:773)
        at com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.java:1168)

        at org.jboss.resource.adapter.jdbc.local.LocalManagedConnectionFactory.createManagedConnection(LocalManagedConnectionFactory.java:172)


开始百度谷歌了各种资料,发现不是大部分所说的jdk1.6缺少2个jar包的问题,后来在官网找到解决方案,地址:

https://blogs.msdn.microsoft.com/dataaccesstechnologies/2016/11/30/intermittent-jdbc-connectivity-issue-the-driver-could-not-establish-a-secure-connection-to-sql-server-by-using-secure-sockets-layer-ssl-encryption-error-sql-server-returned-an-incomplete-respons/ 


介绍一下相关环境:服务器版本windows server2016,数据库版本SQL Server2016 ,

1.更换JDK版本到1.8

2.由于代码比较老旧,更换1.8之后报错,换了一个spring.jar

3.更换对应的驱动包,驱动包是官网上下载的sqljdbc42.jar.

以上资源链接: https://pan.baidu.com/s/1o7PhhmM 密码: 3vzy


你可能感兴趣的:(java,数据库)