什么是mysql执行计划

什么是mysql执行计划

MySQL的功能架构分为3个部分,分别是应用层、逻辑层、物理层。

  • 应用层:主要负责与客户端进行交互,建立链接,记住链接状态,返回数据,响应请求。
  • 逻辑层:主要负责查询处理、事务管理等其他数据库功能处理。以查询为例,数据库接收到查询SQL之后,数据库会立即分配一个线程对其进行处理,第一步查询处理器会对sql查询进行优化,然后生成执行计划,然后交由计划执行器来执行。计划执行器需要访问更底层的事务管理器,存储管理器来操作数据,通过调用物理层的文件获取到查询结构信息,最终将结果响应给应用层。
  • 物理层:实际物理磁盘上存储的文件,主要有分文数据文件、日志文件。

可见,生成执行计划是执行一条sql必不可少的步骤,而sql性能好坏也能通过执行计划看出来。mysql的explain关键字可以让我们很直观的查看一条SQL的执行计划。