这是sql 语句:
SELECT id,title,type,spec,credit FROM eps_article wHeRe type = 'article' AND status = 'normal' AND addedDate <= '2022-07-30 13:32:10' AND eps_article.lang in('zh-cn', 'all') oRdEr bY `id` desc;
这是执行计划:
本地和服务器的数据量相差在1000以内,执行计划结果是一样的
表数据量大小:258000 左右
返回结果集大小:185000 左右
t_s_d_id_c_spec 是覆盖索引
本地执行大概是3s 左右,但在服务器的MySQL 执行要130 多秒
服务器上开了bin_log 和慢查询日志,但也不可能把它拖累到这种地步
博主还是优化一下索引吧,你这单表查询,而且表里才20多万数据,本地都要3秒钟,可以尝试一下组合索引
第一次查询慢?还是每次都慢
bin_log会一定程度上拖慢性能
是本地连接服务器mysql进行查询的吗
你的索引是不是失效了
设置 innodb_buffer_pool_size 这个属性
博主问题解决了不?