我使用
mssql-jdbc-9.2.0.jre8
为了简单起见,代码将与以下代码相同:
Android studio can't connect to database in Azure sql server
我有一个问题要连接到Server或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 DB,但是使用MS,我无法连接。
val connectionString = "jdbc:sqlserver://192.168.xx.xx:1433;databaseName=myData;user=x1;password=p1;encrypt=true;trustServerCertificate=true;"
我得到以下错误:
com.microsoft.sqlserver.jdbc.SQLServerException:驱动程序无法使用安全套接字层(
)加密建立到Server的安全连接。错误:“套接字关闭”。ClientConnectionId: xxxxxxxxxxxxxxxxx
当我使用命令将JTDS版本连接到SQL时,会发生一件有趣的事情:
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,有以下错误
java.sql.SQLException:原因:由于客户端TLS版本低于服务器允许的最小TLS版本,登录失败
我已经试过了
是JTDS的bug,JDBC的bug,还是我的连接字符串无效?我可以用我的dotnet应用程序(C#)连接到SQL。
发布于 2021-08-12 22:45:07
我只是使用下面的PowerShell脚本在Azure托管实例中修复了这个问题:
Set-AzSqlInstance -Name 'InstanceName' -ResourceGroupName 'ResourceGroupName' -MinimalTlsVersion "None" -force
https://stackoverflow.com/questions/66102487
复制相似问题