英文:
Not able to connect spring boot application with SQL SERVER Database
问题
我正在尝试将我的Spring Boot应用程序与SQL Server数据库连接,但它抛出一个异常并显示:
2020年8月18日16:58:11.580 错误 14800 --- [主] com.zaxxer.hikari.pool.HikariPool:HikariPool-1 - 池初始化期间出现异常。
com.microsoft.sqlserver.jdbc.SQLServerException:驱动程序无法使用安全套接字层(SSL)加密建立与SQL Server的安全连接。错误:“SQL Server没有返回响应。连接已关闭。”
*然而,我可以连接到Oracle数据库,但当我尝试连接到SQL Server时出现问题*。
**这是application.properties文件**
spring.datasource.url=jdbc:sqlserver://192.168.*.*\\DB2008;databaseName=mydbname
spring.datasource.username=myuser
spring.datasource.password=mypassword
spring.datasource.driver-class-name=com.microsoft.sqlserver.jdbc.SQLServerDriver
spring.jpa.hibernate.dialect=org.hibernate.dialect.SQLServer2012Dialect
以下是详细错误信息:
2020年8月18日16:58:11.580 错误 14800 --- [主] com.zaxxer.hikari.pool.HikariPool:HikariPool-1 - 池初始化期间出现异常。
com.microsoft.sqlserver.jdbc.SQLServerException:驱动程序无法使用安全套接字层(SSL)加密建立与SQL Server的安全连接。错误:“SQL Server没有返回响应。连接已关闭。ClientConnectionId:37aa16bd-92f0-4af0-a090-06f2349cb51a”。。
at com.microsoft.sqlserver.jdbc.SQLServerConnection.terminate(SQLServerConnection.java:2924) ~[mssql-jdbc-7.4.0.jre8.jar:na]
at com.microsoft.sqlserver.jdbc.TDSChannel.enableSSL(IOBuffer.java:1881) ~[mssql-jdbc-7.4.0.jre8.jar:na]
at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(SQLServerConnection.java:2484) ~[mssql-jdbc-7.4.0.jre8.jar:na]
英文:
I am trying to connect my spring boot application with sql server database but it throwing an Exception and saying :
020-08-18 16:58:11.580 ERROR 14800 --- [ main] com.zaxxer.hikari.pool.HikariPool : HikariPool-1 - Exception during pool initialization.
com.microsoft.sqlserver.jdbc.SQLServerException: The driver could not establish a secure connection to SQL Server by using Secure Sockets Layer (SSL) encryption. Error: "SQL Server did not return a response. The connection has been closed. .
However I am able to connect with oracle database the issue arises when I try to connect with sql server.
here is the application.properties file
spring.datasource.url=jdbc:sqlserver://192.168.*.*\\DB2008;databaseName=mydbname
spring.datasource.username=myuser
spring.datasource.password=mypassword
spring.datasource.driver-class-name=com.microsoft.sqlserver.jdbc.SQLServerDriver
spring.jpa.hibernate.dialect=org.hibernate.dialect.SQLServer2012Dialect
here is the detailed error:
2020-08-18 16:58:11.580 ERROR 14800 --- [ main] com.zaxxer.hikari.pool.HikariPool : HikariPool-1 - Exception during pool initialization.
com.microsoft.sqlserver.jdbc.SQLServerException: The driver could not establish a secure connection to SQL Server by using Secure Sockets Layer (SSL) encryption. Error: "SQL Server did not return a response. The connection has been closed. ClientConnectionId:37aa16bd-92f0-4af0-a090-06f2349cb51a".
at com.microsoft.sqlserver.jdbc.SQLServerConnection.terminate(SQLServerConnection.java:2924) ~[mssql-jdbc-7.4.0.jre8.jar:na]
at com.microsoft.sqlserver.jdbc.TDSChannel.enableSSL(IOBuffer.java:1881) ~[mssql-jdbc-7.4.0.jre8.jar:na]
at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(SQLServerConnection.java:2484) ~[mssql-jdbc-7.4.0.jre8.jar:na]
答案1
得分: 0
我已通过以下步骤解决了这个问题:
编辑 C:\Program Files\Java\jdk1.8.0_251\jre\lib\security\java.security
找到下面的变量,它将有多个逗号分隔的值,移除我下面提到的一个值:
查找:jdk.tls.disabledAlgorithms=
移除:3DES_EDE_CBC
这应该会解决这个问题!
英文:
I have resolved this issue by following the below steps:
Edit C:\Program Files\Java\jdk1.8.0_251\jre\lib\security\java.security
find the below variable it will have multiple comma separated values remove one value which I have mentioned below:
Find: jdk.tls.disabledAlgorithms=
Remove: 3DES_EDE_CBC
This should fix it!
答案2
得分: -1
在这种情况下,您可以尝试以下步骤。
- 确保您的 SQL 服务器正在本地运行(您是否尝试连接到远程 SQL 服务器?)
- 或者,在您的 URL 中,在数据库名称之后使用此语句
jdbc:mysql://IP:3306/someDatabase?autoReconnect=true&useSSL=false
。
英文:
In this case can you can try the following steps.
- Make sure that your SQL server is running locally(Are you trying to connect to a remove SQL server?)
- Alternatively, In your URL after your Data base name use this statement
jdbc:mysql://IP:3306/someDatabase?autoReconnect=true&useSSL=false
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论