开发者Saurabh Dashora用一张图解释了一个 SQL 查询从提交到执行完成的整个过程,分为四个主要步骤:
传输子系统:查询字符串首先到达数据库的传输子系统,该子系统负责管理与客户端的连接,并进行初始的认证和授权检查。
查询处理器:查询进入查询处理器后,由查询解析器负责将查询分解并检查语法错误,创建解析树。然后,查询优化器会检查语义错误,并确定最有效的执行方式,生成执行计划。
执行引擎:执行计划传递给执行引擎,它会协调执行计划中的每一步,通过调用存储引擎来完成查询的执行,并收集结果。
存储引擎:执行引擎向存储引擎发送读 / 写请求。存储引擎的组件,如事务管理器、锁管理器、缓冲管理器和恢复管理器,协助完成数据的读写操作,确保数据的一致性和安全性。