https://blog.csdn.net/Joanna_or_zhouzhou/article/details/122181232
1. 词法分析器:

词法分析器分成6个主要步骤完成对sql语句的分析
词法分析 -> 语法分析 -> 语义分析 -> 构造执行树 -> 生成执行计划 -> 计划的执行
2. 优化器:
优化器就是表里面有多个索引时,决定使用哪个索引;或者存在多表关联时,决定各个表的连接顺序。
比如联合索引的最左匹配的执行计划,就是由优化器决定。
3.执行器:
开始执行的时候,要先判断以下对这个表有没有执行查询的权限。如果没有,就会返回没有权限的错误。
如果有权限,就打开表继续执行。打开表的时候,执行器就会根据表的引擎定义,去使用相关的接口。
最后将结果集返回给客户端,至此语句执行完成。
