Mysql体系结构;一条sql语句在数据库中的执行流程

1. mysql 基本架构图:

Mysql体系结构;一条sql语句在数据库中的执行流程
MySQL 可以分为服务器层和存储引擎层:

  • 服务器层:Mysql大部分的核心功能都在这一层,比如解析、优化、查询缓存。
  • 存储引擎层:负责数据的存储和提取。其架构是插件式的,支持 InnoDB、MyISAM 等多个存储引擎,不同的存储引擎共用一个服务器层。

2. 一条sql语句在数据库中的执行流程

  1. 应用程序把查询 SQL 语句发送给服务器端执行。
  2. 查询缓存,如果查询缓存是打开的,服务器在接收到查询请求后,并不会直接去数据库查
    询,而是在数据库的查询缓存中找是否有相对应的查询数据,如果存在,则直接返回给客户
    端。如果缓存不存在,才会进行下面的操作。
  3. 查询优化处理,生成执行计划。这个阶段主要包括解析 SQL、预处理、优化 SQL 执行计划。
  4. MySQL 根据相应的执行计划完成整个查询。
  5. 将查询结果返回给客户端。
    详细版