Mysql 学习总结(87)—— Mysql 执行计划(Explain)再总结

Posted 科技D人生

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mysql 学习总结(87)—— Mysql 执行计划(Explain)再总结相关的知识,希望对你有一定的参考价值。

一、什么是 Explain

Explain 被称为执行计划,在语句之前增加 explain 关键字,mysql 会在查询上设置一个标记,模拟 MySQL 优化器来执行 SQL 语句,执行查询时,会返回执行计划的信息,并不执行这条 SQL。(注意,如果 from 中包含子查询,仍会执行该子查询,将结果放入临时表中)。Explain 可以用来分析 SQL 语句和表结构的性能瓶颈。通过 explain 的结果,可以了解到如数据表的查询顺序、数据查询操作的操作类型、哪些索引可以被命中、哪些索引实际会命中、每个数据表有多少行记录被查询等信息。

二、Explain 命令扩展

explain extended:在 explain 的基础上提供一些额外的查询信息,在 explian extended 执行以后,通过 show warnings 命令可以得到优化后的查询语句,可以看出优化器做了哪些工作,还可以通过某些数据估算表连接的行数。

explain partitions:用于分析使用了分区的表,会显示出可能用到的分区。

注意:Explain 结果是基于数据表中现有数据的;Explain 结果与 MySQL 版本有很大的关系,不同版本的优化器的优化策略不同。

三、Explain 使用

创作打卡挑战赛 赢取流量/现金/CSDN周边激励大奖

以上是关于Mysql 学习总结(87)—— Mysql 执行计划(Explain)再总结的主要内容,如果未能解决你的问题,请参考以下文章

MySQL的统计信息学习总结

尝试使用 PHP 和 mysql 在 3 个 html 表中显示 87 行 mysql [关闭]

大白话系列MySQL 学习总结 之 MySQL 的架构设计

大白话系列MySQL 学习总结 之 初步了解 MySQL 的架构设计

Linux 学习总结(87)—— shell 中各种括号的作用()(())「」「「」」「」

Linux 学习总结(87)—— shell 中各种括号的作用()(())「」「「」」「」