MySQL八股基础

发布时间 2023-10-17 14:35:13作者: rose_halo

1. 执行一条select语句,期间会发生什么?

  • 连接器:建立连接,管理连接,校验用户身份。
  • 查询缓存,查询语句命中直接返回,否则继续往下执行。MySQL8.0 删除。
  • 解析器:解析SQL语句,对select语句执行词法分析、语法分析,构建语法树,方便后续模块读取表名、字段、语句类型。
  • 执行SQL语句。分为3个阶段
    • 预处理:检查表名或字段是否存在,将*变为所有列。
    • 优化:指定一种效率最高的执行计划(成本最小),是否使用索引,使用哪种索引(主键索引还是普通索引)
    • 执行:根据执行计划执行查询语句,从存储引擎中读取记录,返回给客户端。

来张小林coding的图
image

来自https://www.xiaolincoding.com
复习所用