美文网首页
mysql查询过程

mysql查询过程

作者: 何甜甜在吗 | 来源:发表于2018-03-04 22:29 被阅读0次
mysql查询流程图

查询过程
1)客户端首先通过客户端/服务器通信协议与mysql服务器建立起连接
2)客户端发送一条sql语句
判断是否为查询语句,如果是查询语句,则先在查询缓存区哈希查找对应sql的数据,如果查询之前已经执行过了,则将会命中缓存,返回对应的数据,否则将继续执行3) 4) 5) 6)
查询缓存位于本机内存中,这样如果命中了缓存,就不需要从磁盘查询数据了,从内存查询的效率要比从磁盘查询的效率高
3)第一次解析 检查解析的sql是否有语法错误
4)第二次解析 检查解析的sql的表名、字段名是否正确
5)查询优化器生成执行计划,查询优化器的作用是为sql语句选取合适的索引或者不使用索引
查询优化器中也有缓存(cache),会缓存sql语句的执行计划,当然执行计划会随着表结构和表数据的变化而变化,这时,这个执行计划将失效(evict)。在进行sql执行过程中,系统自动优化的方式有时候并不是最优的,这就需要我们强制使用指定索引来提高查询效率
eg:

select * from table force index(index_name)

6)将执行计划交给存储引擎执行
7)将查询到的结果缓存到查询缓存中,在从查询缓存中返回数据给客户端

相关文章

  • 高性能的索引策略

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

  • 流程图

    mysql查询过程image

  • mysql查询过程

    查询过程1)客户端首先通过客户端/服务器通信协议与mysql服务器建立起连接2)客户端发送一条sql语句判断是否为...

  • mysql学习

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

  • MySQL基础

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

  • mysql-查询优化处理

    下面是mysql查询的路径 下面简单的理解一下mysql服务器的查询过程 查询缓存 在解析一个查询语句之前,如果查...

  • MySQL查询执行过程

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

  • mysql 执行查询过程

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

  • SQL执行与优化

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

  • MySQL学习笔记 day1

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

网友评论

      本文标题:mysql查询过程

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