文档首页/ 数据库和应用迁移 UGO/ 常见问题/ 数据库连接/ SQL Server测试连接失败,提示错误信息 ErrorCode=0, SQLState=08S01
更新时间:2024-10-10 GMT+08:00

SQL Server测试连接失败,提示错误信息 ErrorCode=0, SQLState=08S01

问题描述

当源数据库为SQL Server,并选择“不使用SSL”时,测试连接失败,弹窗提示 ErrorCode=0, SQLState=08S01,同时查看相关日志,发现有如下相关错误信息:Caused by: The server selected protocol version TLS10 is not accepted by client preferences [TLS13, TLS12]。

问题原因

即便指定了非SSL链接,SQL Server底层协议仍会自生成一个证书对登录数据包内容进行加密,较低版本可能会使用TLS1.0协议,而当前使用的JRE因为不够安全的原因,默认禁用了TLS1.0。

解决方法

按照以下步骤,修改JVM配置:

  1. 以root用户登录到UGO服务器。
  2. 确认Java运行环境路径,下文以JAVA_HOME代称。
  3. 修改<JAVA_HOME>/lib/security/java.security文件。

    vi <JAVA_HOME>/lib/security/java.security

  4. 删除jdk.tls.disabledAlgorithms配置项中的TLS v1协议,并保存。

    图1 删除对TLS v1协议的禁用

  5. 重启UGO服务,<UGO_HOME>为UGO安装目录。

    python3 <UGO_HOME>/bin/ugoserver.py restart