如何解决JDBC 无法连接到 SQL Server/Azure SQL 数据库
我用
- JTDS 版本:jtds-1.3.1
- MS SQL JDBC 版本:mssql-jdbc-8.4.0.jre8 甚至 mssql-jdbc-9.2.0.jre8 Java 8 Update 251
为简单起见,代码将与:
Android studio can't connect to database in Azure sql server
我无法连接到 SQL 数据库或 Azure SQL。
我想用这个语法连接:
val connectionString = "jdbc:jtds:sqlserver://192.168.xx.xx:1433;databaseName=myData;user=x1;password=p1;encrypt=true;trustServerCertificate=true;"
使用此 JTDS 连接字符串,我可以连接到本地主机上的 sql server 数据库。但是使用 MS-JDBC,我无法连接。
val connectionString = "jdbc:sqlserver://192.168.xx.xx:1433;databaseName=myData;user=x1;password=p1;encrypt=true;trustServerCertificate=true;"
出现以下错误:
com.microsoft.sqlserver.jdbc.SQLServerException: The Driver could not establish a secured connection to SQL Server by using Secure Sockets Layer (SSL) encryption. Error: "Socket is closed". ClientConnectionId: xxxxxxxxxxxxxxxxx
有趣的事情发生了。当我使用以下命令将 JTDS 版本连接到 SQL Azure 时:
jdbc:jtds:sqlserver://xxxxx.database.windows.net:1433;database=xxxxx;user=username;password=password;encrypt=true;trustServerCertificate=false;hostNameInCertificate=*.database.windows.net;loginTimeout=30;
我无法连接到 SQL Azure,出现以下错误
java.sql.SQLException: Reason: Login Failed due to client TLS Version being less than minimal TLS Version allowed by the server
我已经试过了:
- SSLProtocol=TLSv1.2(TLS、TLSv1.0、TLSv1.1)=> 无效
- ssl=需要
是JTDS的BUGS、JDBC的BUG还是我的连接字符串无效? 我可以使用我的 dotnet 应用程序 (C#) 连接到 SQL Azure
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。