流程:
1. 客户端到连接器是通过TCP/IP SSL通信协议连接的,
2.连接器验证MySQL权限信息是否正常,连接量是否正常,长时间没有连接服务器会自动断开等等 ;
3. 然后到解析器,通过客户端发过来的sql进行语法解析,验证sql是否合法;
4.然后到优化器,生成执行计划选择索引;
5.再到执行器调用存储引擎提供的API接口 进行数据读写操作;
6.然后存储引擎花费磁盘IO进行数据读写,B+树索引构建、事务日志等 ;
7.磁盘上存着数据:表结构、表数据和表索引。
8.最后执行器,如果是查询操作,将结果在查询缓存中缓存一份返回给客户端。
连接器:管理连接,权限验证
解析器:词法分析 语法分析
优化器:生成执行计划 选择索引
执行器:调用存储引擎提供的API接口 进行数据读写操作, 执行SQL,返回结果
存储引擎:存储数据,提供读写接口