0
0
0
1
专栏/.../

TiDB升级5.x连接问题

 18515065291  发表于  2021-09-03
     **TiDB升级5.x连接效率问题**
                                    --2021-09-03 春雷

1、现象

情况: 某业务有3套集群

  • 新的业务部署了5.0.1 和 5.0.3 版本的集群,
  • 老的业务是4.0.2 版本的集群

问题:

但是业务反馈:发现程序连接tidb集群4.0.2时,特别快, 毫秒级;

连接tidb集群5.0.1、5.0.3特别慢, 百毫秒级。

2、具体

2.1、旧程序参数

JDK: 1.6 (1.6.0_45)

驱动包: mysql-connector-java-5.1.6.jar

驱动类: com.mysql.jdbc.Driver

连接url示例: "jdbc:mysql://10.0.0.1:100/db_name?connectTimeout=1000&useUnicode=true&characterEncoding=utf-8&autoReconnect=true

2.2、新程序参数

JDK: 1.8 (1.8.0_231)

驱动包: mysql-connector-java-6.0.6.jar

驱动类: com.mysql.cj.jdbc.Driver

连接url示例: "jdbc:mysql://10.0.0.1:100/

升级了程序的JDK后,连接正常

3、原因

  • TiDB 的 4.0.9+、5.0 版本都有一个缺陷,就是一个连接第一执行 SHOW VARIABLES 的时候会很慢,这个问题在 5.1 版本修复了,预计会在 4.0、5.0 的下一个小版本修复。
  • JDBC 5.1.6 又有一个问题,是每一个连接在创建的时候都会执行一次 SHOW VARIABLES,跟 TiDB 4.0.9+、5.0 一起用的时候观察到的现象就是连接的建立比较慢

所以用户升级 JDBC 驱动以后,看到变快了。

TiDB 在下一个 4.0、5.0 版本会修复那个问题,到时候用户就不需要升级 JDBC 版本

综上 :为了避免升级连接时间变长,推荐先升级下JDBC版本,再进行数据库版本升级

0
0
0
1

版权声明:本文为 TiDB 社区用户原创文章,遵循 CC BY-NC-SA 4.0 版权协议,转载请附上原文出处链接和本声明。

评论
暂无评论