一,先来一张架构图
二.MYSQL架构的介绍
1.服务层:涵盖所有MYSQL大多数核心服务功能,所有跨存储引擎的所有功能都在这层实现
a.连接器:负责和客户端进行连接,维持管理连接
b.查询缓存:之前执行过的语句会在key-value形式进行存储,MSYQL进行查询的时候会先在缓存中进行寻找,然后找到对应信息
c.分析器:进行词法分析,解析出SQL,识别出语句;语法分析,然后解析出对应的语句进行执行
d.优化器:生成执行计划,决策使用的索引,多表进行连接
e.执行器:首先校验数据权限,然后打开表,根据执行引擎,使用对应的引擎接口,最终吧客户端返回给客户端
2.客户端:负责和服务端进行连接,发送SQL语句,接收结果
3.存储引擎:提供存储和读取数据的接口,例如索引的优化,使用索引定位磁盘,开始事务