博客
关于我
高性能MySQL(五):查询性能优化
阅读量:410 次
发布时间:2019-03-06

本文共 257 字,大约阅读时间需要 1 分钟。

当向MySQL 发送一个请求的时候MySQL 到底做了什么?

1、客户端发送一条查询给服务器

2、服务器先检查查询缓存,如果命中了缓存,则立即返回存储在缓存中的结果。否则进入下一阶段

3、服务器端进行SQL解析、预处理,再由优化器生成对应的执行计划

4、MySQL 根据优化器生成的执行计划,调用存储引擎的API 来执行查询

5、将结果返回给客户端

注意:MySQL客户端和服务器之间的通信协议是“半双工”,这意味着,在任何时刻,要么有服务器向客户端发送数据,要么由客户端向服务器发送数据,这两个动作不能同时发生。

转载地址:http://kovkz.baihongyu.com/

你可能感兴趣的文章
MySQL执行SQL文件出现【Unknown collation ‘utf8mb4_0900_ai_ci‘】的解决方案
查看>>
Mysql执行update by id的过程
查看>>
mysql执行计划
查看>>
MySQL执行计划 EXPLAIN参数
查看>>
MySQL执行计划【explain】,看这一篇就够啦!
查看>>
Mysql执行计划字段解释
查看>>
mysql执行计划怎么看
查看>>
MySQL执行计划解读
查看>>
mysql执行顺序与索引算法
查看>>
mysql批量update优化_Mysql中,21个写SQL的好习惯,你值得拥有呀
查看>>
mysql批量update操作时出现锁表
查看>>
MYSQL批量UPDATE的两种方式
查看>>
mysql批量修改字段名(列名)
查看>>
MySQL批量插入数据遇到错误1213的解决方法
查看>>
mysql技能梳理
查看>>
MySQL报Got an error reading communication packets错
查看>>
Mysql报错Can‘t create/write to file ‘/tmp/#sql_3a8_0.MYD‘ (Errcode: 28 - No space left on device)
查看>>
MySql报错Deadlock found when trying to get lock; try restarting transaction 的问题解决
查看>>
MySQL报错ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘
查看>>
Mysql报错Packet for query is too large问题解决
查看>>