版本:v4.0.13
两张查询表的字符集和排序规则为:utf8mb4,utf8mb4_general_ci
character_set_connection: utf8
collation_connection: utf8_general_ci
创建binding:
create global binding for
select …
using
select … force index(idx_created_at)
登陆客户端查询:
执行计划正常走了索引
查看了dashboard,程序中跑的执行计划没有走索引
查看binding信息:
show global BINDINGS\G
set session character_set_connection=utf8mb4;
此时客户端的执行计划也不走binding的索引了
所以想着可能是字符集和排序规则的问题
set session collation_connection=utf8mb4_general_ci;
删除binding然后重新创建binding
创建binding:
create global binding for
select …
using
select … force index(idx_created_at)
此时binding信息
这时候程序能够正常走索引了,我们把connection的相关参数设置成utf8mb4和utf8mb4_general_ci的时候,客户端也能够正常走索引,但是和开发聊了之后,开发说程序的连接配置也是utf8,我只能说我不李姐