mysql的架构图(连接层,服务层,引擎层,存储层)

本文详细介绍了MySQL的架构,包括连接层、服务层、存储引擎和数据存储层。在执行流程中,从客户端连接到查询缓存,再到解析、预处理、优化,最后由存储引擎执行。此外,还探讨了不同存储引擎的比较,并提供了查看存储引擎的方法。
摘要由CSDN通过智能技术生成

一 mysql的架构图

1.1 架构图

1.连接层:最上层是一些客户端和连接服务,包含本地 sock 通信和大多数基于客户端/服务端工具实现的类似于 tcp/ip 的 通信。

2.服务层:一些sql接口,解析器(parser),优化器(optimizer),缓存(caches或者buffers)

3.存储引擎:存储引擎层,存储引擎真正的负责了 MySQL 中数据的存储和提取,服务器通过 API 与存储引擎进行通信。

4.数据存储层,主要是将数据存储在运行于裸设备的文件系统之上,并完成与存储引擎的交互

二 执行流程

2.1 mysql的执行流程

mysql 的查询流程大致是:
1.mysql 客户端通过协议与 mysql 服务器建立连接 发送查询语句,先检查查询缓存 ,如果命中,直接返回结果,将缓存中的结果返回给用户即可,这将大大提高系统的性能。
2.如果没有命中:解析,预处理,优化
     2.1 语法解析器和预处理:首先 mysql 通过关键字将 SQL 语句进行解析,并生成一颗对应的“解析树”。
    2.2 mysql 解析器将使用 mysql 语法规则验证和解析查询,
    2.3 预处理器则根据一些 mysql 规则进一步检查解析数是否合法。
    2.4  优化器:优化器将解析树被认为是合法的sql,将其转化成执行计划。一条查询可以有很多种执行方式, 优化器的作用就是找到这其中最好的执行计划

三 存储引擎比较

3.1 查看引擎

1.查看引擎

show variables like '%storage_engine%' 

3.2 存储引擎的比较 

 1.存储引擎比较

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值