已 协商 获取 ' TLSv1 , 请 更新 服务 器 和 客户 端 , 以便 在 尝试 连接 到 MS SQL Server 时 ' 至少 使用 TLSv1.2

xxe27gdn  于 2022-11-21  发布在  SQL Server
关注(0)|答案(3)|浏览(704)

这 是 我 的 连接 字符 串 :

public static void connectToDatabase() {
    String url = "jdbc:sqlserver://192.168.0.95\\instance;databaseName=sampleDB";
          
    String username = "sa";
    String password = "pass";

    try {
       Connection conn =  DriverManager.getConnection(url,username,password);
       System.out.println("Connected to sql server");                   
    }

中 的 每 一 个
我 从来 没有 使用 过 MS SQL , 但 我 需要 连接 , 这 是 我 得到 的 错误 :

avg 12, 2020 2:45:47 PM com.microsoft.sqlserver.jdbc.TDSChannel enableSSL
WARNING: TLSv1 was negotiated. Please update server and client to use TLSv1.2 at minimum.
com.microsoft.sqlserver.jdbc.SQLServerException: Login failed for user 'sa'. 
ClientConnectionId:33111bca-b8c7-4be3-9673-b012c5949817

格式
我 使用 的 是 windows 7 专业 版 ( 不要 问 ) 。 我 该 如何 解决 这个 问题 ?

drkbr07n

drkbr07n1#

警告 消息 " 警告 :已 协商 TLSv1 。 请 更新 服务 器 和 客户 端 以 至少 使用 TLSv1.2 。 ' 与 连接 异常 无关 。
即使 有 警告 , 连接 也 会 建立 。 连接 中 的 问题 似乎 与 连接 参数 有关 。
代替

String url = "jdbc:sqlserver://192.168.0.95\\instance;databaseName=sampleDB";

中 的 每 一 个
使用 了

String url = "jdbc:sqlserver://192.168.0.95;databaseName=sampleDB";

格式
同时 传递 正确 的 用户 名 和 密码 。

7fyelxc5

7fyelxc52#

在Maven项目中,您可以在pom.xml中更改版本,如下所示;

<dependency>
    <groupId>com.microsoft.sqlserver</groupId>
    <artifactId>mssql-jdbc</artifactId>
    <version>8.2.1.jre11</version>
</dependency>
2ul0zpep

2ul0zpep3#

我遇到此问题是因为我的服务器密码已过期

相关问题