一条sql在mysql中是如何执行的

一条sql在mysql中是如何执行的
先上图为敬

从图上可以看出,我们是客户端,mysql主要由两个部分组成

1.Server层,其中包含

连接器 负责 管理连接,权限验证

查询缓存 先去缓存中去查找,是否有要查询的结果,如果有的话,直接返回查询结果

分析器 分析传输过来的sql语句,具体是要干什么

优化器 在已有的情况下,选择最优的执行路径

执行器 连接存储引擎,执行语句,返回结果

2.存储引擎 负责数据的存储,以及提供读写接口

存储引擎包含InnoDB、MyISAM、Memory,从MySQL 5.5.5版本开始创建表默认是InnoDB。不同的存储引擎共用一个Server层,也就是从连接器到执行器的部分。

待续: