一个 SQL 语句在 MySQL 中的执行流程

一个 SQL 语句在 MySQL 中的执行流程

请添加图片描述

从上图可以看出,MySQL 主要由下面几部分构成:

  • 连接器:身份认证和权限相关(登录 MySQL 的时候);
  • 查询缓存:执行查询语句的时候,会先查询缓存(MySQL 8.0 版本后移除,因为此功能不太实用);
  • 分析器:没有命中缓存的话,SQL 语句就会经过分析器,分析器说白了就是要看你的 SQL 语句要干嘛,再检查你的 SQL 语句语法是否正确;
  • 优化器:按照 MySQL 认为最优的方案去执行;
  • 执行器:执行语句,然后从存储引擎返回数据。执行语句之前会先判断是否有权限,如果没有权限的话,就会报错;
  • 插件式存储引擎:主要负责数据的存储和读取,采用的是插件式架构,支持 InnoDBMyISAMMemory 等多种存储引擎。

猜你喜欢

转载自blog.csdn.net/qq_33833327/article/details/129008693