时间:2021-07-01 10:21:17 帮助过:36人阅读
MySQL查询过程 :
在解析一个查询语句前,如果查询缓存是打开的,那么MySQL会检查这个查询语句是否命中查询缓存中的数据,如果当前查询恰好命中查询缓存,在检查一次用户权限后直接返回缓存中的结果.中中情况下,查询语句不会被解析,也不会生成执行计划,更不会被执行
MySQL通过关键字对SQL语句进行解析,并生成一颗对应的解析树.这个过程解析器通过语法规则来验证和解析.
预处理则会根据MySQL规则进一步检查解析树是否和法,比如检查药查询的数据表和数据列是否存在.
优化器将解析树转化成查询计划,一条查询可以有多种执行计划,优化器的作用就是选择一条最优的执行计划
调用存储引擎来执行查询计划得出结果
将结果返回给客户端,如果查询缓存打开且这个查询可以被缓存,MySQL会将结果存放在缓存中
MySQL查询过程
标签:验证 语法规则 计划 进入 strong 情况 数据 mys 进一步