描述将sql语句提交给mysql数据库以后数据库拿到sql语句后执行流程
发布网友
发布时间:2022-07-26 16:12
我来回答
共1个回答
热心网友
时间:2023-10-21 09:11
我了解postgreSQL的执行流程,应该和mysql是相同的:
SQL语句在提交服务器后的流程如下:
1 进行词法分析
2进行语法分析,验证其中的属性、字段等在元数据中是否存在,并生成语法解析树
3 将语法解析树转换成逻辑执行计划
4对逻辑执行计划进行优化,得到优化后的逻辑执行计划
5根据优化后的逻辑执行计划,以及数据库中的索引等优化信息,为其中的关系代数操作符选择物理操作符和生成操作符的执行顺序,即生成查询的物理执行计划
6 将物理执行计划提交给查询执行引擎,调用物理操作符对应的函数执行查询
7 查询执行引擎将调用事务管理器、日志管理器、数据访问管理器等组件执行物理操作符的函数。
8将结果放入输出缓冲区
9返回结果数据。