(图片参考深入浅出Mysql(一)——sql查询执行过程 - 知乎)
MySQL是分层执行的,主要分为两个层次,Server层和储存引擎层。
执行过程:首先通过连接器进行客户端与MySQL服务器的连接,这个过程会进行用户校验和权限验证;验证通过以后,分析器会对sql语句进行语法分析,得到mysql可以理解的语法,随后进入优化器,优化器会对sql语句进行适当的优化(优化器的主要作用是在表中有多个索引的时候,决定用哪个索引;或者在一个语句有多表关联(join)的时候,决定各表的连接顺序。);接下来就是执行器通过引擎接口与存储引擎进行交互,然后将执行结果返回给客户端。