MySQL 调优 —— Using filesort
2024-10-20 00:52:12
出现这个问题的解决办法在于 MySQL 每次查询仅仅能使用一个索引, 而你的 SQL 语句 WHERE 条件和 ORDER BY 的条件不一样, 索引没建好的话。 那么 ORDER BY 就使用不到索引。 出现了 Using filesort 问题。
解决问题就是建立一个包括 WHERE 和 ORDER BY 条件的混合索引。
比方原来 SQL 语句是:
SELECT * FROM user u where u.id=100 order by u.update_time
而索引是 idx_user_id(id)
如今又一次建立索引为 idx_user_id_update_time(id,update_time)
再使用 EXPLAIN 命令查看。 假设 key 使用的是上述新建的 idx_user_id_update_time 索引。 则能够看到 Using file sort 问题消失了。 假设 key 不是使用新建 idx_user_id_update_time 索引。 能够使用 force index() 方法强制使用这个索引, 此时 using filesort 问题就攻克了。
SELECT * FROM user u force index(idx_user_id_update_time) where u.id=100 order by u.update_time
最新文章
- 使用SqlDataReader和SqlDataAdapter的注意
- Angular作用域的层级概念(scope)
- Apple Watch已向微信开放WatchKit接口?
- QuickSort快速排序的多种实现和优化
- checkbox与说明文字无法对齐的问题
- Spring中的设计模式学习
- heredoc和nowdoc的区别
- [iOS]ios archives 出现的是other items而不是iOS Apps的解决方案
- 我们应该如何去了解JavaScript引擎的工作原理 系列
- ●BZOJ 2669 [cqoi2012]局部极小值
- 使用HttpClient发送Get/Post请求 你get了吗?
- ASP.Net Core 2.2 MVC入门到基本使用系列 (三)(转)
- 项目Alpha冲刺--3/10
- 初始ASP.NET数据控件【续 ListView】
- Robot Framework + Selenium library + IEDriver环境搭建
- 本地推送UILocalNotification(转)
- oracle 用函数返回对象集合
- ASP.NET IOC之 AutoFac的认识和结合MVC的使用
- day2 RHCE
- EMMA 覆盖率工具
热门文章
- 【题解】永无乡 [HNOI2012] [BZOJ2733] [P3224]
- yield from (python生成器)
- BZOJ 4310 二分+SA+RMQ
- ACM_“打老虎”的背后(简单并查集)
- ORACLE SEQUENCE用法(转)
- 350 Intersection of Two Arrays II 两个数组的交集 II
- struts2.1.6存在中文乱码的bug
- PHP基础知识测试题及解析
- 01--SQLite学习网站参考
- PHP 之文件锁解决并发问题