mysql更新内部原理

mysql逻辑图

1.jpg

mysql更新内部原理

一、mysql原理图

1、连接池:mysql会提前初始化好一个连接池,负责对mysql外部进行连接的客户端进行分发连接,进行账号密码的验证,库表权限的验证。

2、SQL接口:连接完成后,对数据库进行增删改查的SQL操作会发给SQL接口。

3、解析器:负责对SQL接口的SQL语句进行解析,主要为:判断语法正确性,库表有无,所要操作的类型(CURD),需要获取的库表列的信息等。

4、优化器:为实现解析器的效果,选择最优的路径并生成执行计划,尽量减少对server层与存储引擎之间交互。

5、执行器:根据执行计划调用存储引擎接口。

6、存储引擎层:负责对数据进行调度、处理。例如icp,支持多种存储引擎。

以下以innodb为例讲一下update操作下,mysql的内部实现。

sql如下:

update test.t1 set id=1 where name='longfei'; 

结构图如下:

2.jpg

你可能感兴趣的:(mysql更新内部原理)