美文网首页
MySQL查询流程

MySQL查询流程

作者: 雨后桥前 | 来源:发表于2020-03-23 08:12 被阅读0次

    一、图解

    MySQL查询流程图

    二、分层讲解

    1、Server层:包含了连接器、查询缓存、分析器、优化器、执行器,包含了MySQL大多数的核心功能、以及所有的内置函数,所有跨存储引擎的功能都在这一层实现;比如存储过程、触发器、视图等。。。

    2、存储引擎层:负责数据的存储和提取,存储引擎是插件式的;常见的存储引擎有,MyIsAm,Innodb,Memory;5.5之后默认的存储引擎是Innodb。

    三、流程讲解

    1、连接器:连接MySQL,输入账号密码进行验证,获取用户权限。

    2、查询缓存:如果开启查询缓存,select语句会先到缓存中查询是否存在该缓存,存在则直接返回;MySQL查询缓存是以key->value的形式存储的,key是查询语句;如果没有缓存则执行后续的操作,查询结束后将查询结果存储到缓存中。(查询缓存的利大于弊、具体看实际使用情况)

    3、分析器:a. 先是做 ‘词法分析’ 按照空格分析出所有的单词 ,找出单词中存在的关键字 b.接下来做语法分析 ,根据内置于法规则 来 判断输入的语法是否正确

    4、优化器:提高查询效率;最优化查询语句组装、索引选择、表连接顺序

    5、执行器:a.先判断是否以有执行权限、b.调用存储引擎提供的查询接口、c.返回结果集

    相关文章

      网友评论

          本文标题:MySQL查询流程

          本文链接:https://www.haomeiwen.com/subject/hghiyhtx.html