附录 SQL执行过程 v1.0
一、SQL的执行过程

解析器(Parser)一般分为词法分析(Lexical analysis)、语法分析(Syntax analysis)和语义分析(Semantic analyzer)等步骤。
二、SQL引擎
1.Parser(解析器)
解析器负责对 SQL 语句进行词法、语法和语义分析。

2.Optimizer(优化器)



3.Executer(执行器)



三、存储引擎
1.InnoDB

四、事务引擎
通过 Undo Log 实现数据回滚:
Undo Log 是逻辑日志,记录数据的增量变化。利用 Undo Log 可以进行事务回滚,从而保证事务的原子性,同时也实现了多版本并发控制(MVCC),解决读写冲突和一致性读的问题。

通过 Redo Log 实现数据的持久化保存:
Redo Log 是物理日志,记录页面的变化,用于保证事务持久化。如果数据写入磁盘前发生故障,重启 MySQL 后会根据 Redo Log 重做。