参考答案
结论:MySQL执行SQL分三层:连接层、服务层、存储引擎层。流程:1.连接器建立连接并校验权限;2.查询缓存(8.0已删)命中直接返回;3.分析器做词法语法解析生成解析树;4.优化器选执行计划,如用哪个索引、join顺序;5.执行器调用引擎接口取数据,权限复核;6.InnoDB引擎通过buffer pool读页,未命中从磁盘加载,写操作记redo/undo,事务提交走两阶段提交写binlog。关键点:服务层通用,引擎层可插拔;优化器基于成本模型;示例:select where id=1走聚簇索引直接定位。