美文网首页
mysql 执行查询过程

mysql 执行查询过程

作者: Kamiya_ | 来源:发表于2020-02-28 23:28 被阅读0次

1、客户端发送一条查询给服务器
2、服务器会检查查询缓存,如果缓存中存在则会校验权限,如果权限通过将直接返回结果
3、如果缓存中不存在则通过解析器进行sql解析,解析sql语法是否存在错误,如果错误会停止查询
4、通过预处理器,检查数据库列、数据表是否存在,解析别名是否有歧义
5、再由优化器进行查询优化,主要是将SQL转化为执行计划,一条SQL有多种执行方式,查询优化器就是为了找到代价最低的那一条方式,生成执行计划
6、mysql根据查询计划,调用存储引擎api来执行查询
7、将结果返回客户端

ps:查询缓存
在解析查询SQL的时候,如果这个查询是打开的,那么MySQL会优先在缓存中查询该SQL是否命中,这个过程是一个大小写敏感的过程,即使只有一个字节不同,也不会命中缓存,如果恰好命中了缓存,则下一步不是返回结果,而是查看权限是否有问题,如果检测权限有问题,则不会返回结果,如果权限没有问题,则会返回结果给客户端。这一点很重要,需要保持谨慎。

相关文章

  • 高性能的索引策略

    MySQL查询基础-查询执行过程 MySQL聚簇索引 MySQL覆盖索引 MySQL索引扫描排序 MySQL冗余和...

  • SQL执行与优化

    SQL优化 执行计划,表关联查询顺序,优化策略与思路 MYSQL执行过程 一、MySQL架构总览: 二、查询执行流...

  • MySQL基础

    MySQL查询执行过程 一条SQL语句执行的流程如下: 客户端连接 MySQL 服务器,发布查询 如果查询缓存中有...

  • MySQL查询执行过程

    MYSQL请求处理路径: MySQL请求处理流程: #1.为用户创建、分配处理线程。 #2.登录验证 #3.资源初...

  • mysql 执行查询过程

    1、客户端发送一条查询给服务器2、服务器会检查查询缓存,如果缓存中存在则会校验权限,如果权限通过将直接返回结果3、...

  • mysql学习

    选择mysql理由 mysql架构 mysql查询执行过程概述 相关概念 相关基础概念 数据类型 ​ mysql ...

  • MySQL学习笔记 day1

    一、从查询语句的执行过程来看MySQL架构 从一条语句的执行过程来窥探MySQL的架构,MySQL从架构上可以分为...

  • Java 面试系列:MySQL 面试题汇总

    1.说一下 MySQL 执行一条查询语句的内部执行过程? 答:MySQL 执行一条查询的流程如下: 客户端先通过连...

  • MySQL查询的执行过程

    我们总是希望MySQL能够获得更高的查询性能,最好的办法是弄清楚MySQL是如何优化和执行查询的。一旦理解了这一点...

  • MySQL查询语句执行过程

    查询请求的执行流程 众所周知在MySQL数据库应用中查询请求是使用最多的,假设我们输入代码段1 中的SQL,通过客...

网友评论

      本文标题:mysql 执行查询过程

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