刷题刷出新高度,偷偷领先!偷偷领先!偷偷领先! 关注我们,悄悄成为最优秀的自己!
如何分析慢查询?
SELECT * FROM warning_event
如何判断?估算响应时间、扫描的行数和返回的行数(EXPLAIN)
SELECT * FROM warning_event WHERE assailant_id=1
EXPLAIN SELECT 1 FROM warning_event WHERE event_code=’1′ limit 1;
+————-+——+——+——+————-+
| select_type | type | ref | rows | Extra |
+————-+——+——+——+————-+
| SIMPLE | ALL | NULL | 285 | Using where |
+————-+——+——+——+————-+
event_code增加索引
+————-+——+——-+——+————————–+
| select_type | type | ref | rows | Extra |
+————-+——+——-+——+————————–+
| SIMPLE | ref | const | 1 | Using where; Using index |
+————-+——+——-+——+————————–+
SHOW FULL PROCESSLIST
比较重要的一个字段:State
Query:正在执行查询或者发送数据到客户端
Locked:等待锁
Analyzing and statistics:收集统计信息,生成查询执行计划
Copying to tmp table [on disk]:正在执行的查询将结果集放到临时表中,GROUP BY操作、文件排序操作、UNION操作,on disk这个临时表在硬盘上
Sorting result:对结果集进行排序
本文链接:MYSQL查询慢的主要原因有哪些 ?如何分析慢查询 ?
版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。让学习像火箭一样快速,微信扫码,获取考试解析、体验刷题服务,开启你的学习加速器!