为提高效率,请提供以下信息,问题描述清晰能够更快得到解决:
【TiDB 版本】
4.0.10
【问题描述】
若提问为性能优化、故障排查类问题,请下载脚本运行。终端输出的打印结果,请务必全选并复制粘贴上传。
为提高效率,请提供以下信息,问题描述清晰能够更快得到解决:
【TiDB 版本】
4.0.10
【问题描述】
若提问为性能优化、故障排查类问题,请下载脚本运行。终端输出的打印结果,请务必全选并复制粘贴上传。
1、这样的 慢 SQL 在所有的 tidb-server 上都有吗,建议根据 instance 看一下
观察了一下 是其中一台tidb
我测试是不新建连接 也会出现慢的情况。
还有问了下研发,他们是使用datagrip工具连接数据库
profiling_pack_3.zip (341.4 KB)
帮确认个信息,这个 tidb-server 查询 SESSION_VARIABLES 这个系统表的 表现如何,慢还是快?
另外,trace format=‘row’ set xxx 看看这个语句哪里慢
SHOW SESSION VARIABLES; 除了第一次会慢,其他不慢,是不是我的连接都是经常一次连接?
你的感觉应该都是一次链接,你可以开启general log 验证下。
我怎么定位是第一次连接呢?
日志里会详细记录session链接的时间,做了什么操作。 都可以看出来。
开启是否对性能有影响?
会有,验证的话,你可以在业务低峰期开启,验证后,尽快关闭。
每次都慢那可能哪里有问题
第一次慢的话,有可能的原因是,当时 tidb 的内存里面还没有加载 region 信息,首次查询需要从 pd 加载 tikv 的 region 信息并缓存。而且缓存是有有效期的,如果访问模式是,每隔好几个小时访问一次,然后就再也不访问了,那有可能每次重复这个过程,看上去就是每次 show variable like 都慢了
每次都慢,有可能有好多并发连接每次上来都读这个地方,每次请求都是到的同一个 region,
然后导致 tikv 形成读热点变慢的,这个假设需要大量的并发连接请求可能出现,可以查下使用的框架或者业务模式是怎么样的。