mysql存储引擎

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: mysql存储引擎

宏观图:

分为三个层次

客户端:

命令行、jdbc、navicat可视化工具都归属于客户端,用来提交SQL语句

mysqlserver:

要运行sql必须要启动mysql的服务,如果不启动的话是运行不了的

第三层-存储引擎:可以认为是不同数据在存储时的不同形式

连接器

频繁产生对接、断开,不可能每次执行一次SQL就连接断开,于是出现连接池,可以帮助保持一段时间连接

druid:提供了监控的功能,springboot里面默认集成了hekarui连接池

补充知识:

Id: 就是这个线程的唯一标识,当我们发现这个线程有问题的时候,可以通过 kill 命令,加上这个Id值将这个线程杀掉。前面我们说了show processlist 显示的信息时来自information_schema.processlist 表,所以这个Id就是这个表的主键。

User: 就是指启动这个线程的用户。

Host: 记录了发送请求的客户端的 IP 和 端口号。通过这些信息在排查问题的时候,我们可以定位到是哪个客户端的哪个进程发送的请求。

DB: 当前执行的命令是在哪一个数据库上。如果没有指定数据库,则该值为 NULL 。

Command: 是指此刻该线程正在执行的命令。这个很复杂,下面单独解释

Time: 表示该线程处于当前状态的时间。

State: 线程的状态,和 Command 对应,下面单独解释。

Info: 一般记录的是线程执行的语句。默认只显示前100个字符,也就是你看到的语句可能是截断了的,要看全部信息,需要使用 show full processlist。

分析器

SQL就是一条字符串,只不过mysql拿到之后做了一些处理,把where、from等关键字拿出来之后截取对应的字符串,验证有没有问题(词法分析)

执行

的过程就是语法分析,这个语法分析最后会变成AST(语法树)

优化器

mysql调优、jvm调优等等,比方说已经写好了一个AST树,有N种解析方式,在mysql定义了很多种方式去帮你更好的解析,CBO(基于成本的优化)、RBO(基于规则的优化),所以mysql其实已经帮助我们进行了优化,只不过我们不知道而已

优化器自动优化,通过“explain select STRATGHT_JOIN”我们就可以查看SQL的执行方式

执行器

当优化器优化好sql之后,选择好路之后(会选择一个具体的执行过程),然后执行器根据选择执行过程之后去存储引擎取数据或者过滤数据,在返回给客户端

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
8天前
|
存储 缓存 关系型数据库
MySQL 存储引擎
MySQL 存储引擎
35 6
|
8天前
|
存储 缓存 关系型数据库
Mysql的两种存储引擎以及区别
Mysql的两种存储引擎以及区别
24 1
|
8天前
|
存储 关系型数据库 MySQL
Mysql第七天,存储引擎
Mysql第七天,存储引擎
69 0
Mysql第七天,存储引擎
|
8天前
|
存储 关系型数据库 MySQL
【MySQL 数据库】5、存储引擎
【MySQL 数据库】5、存储引擎
127 0
|
8天前
|
存储 关系型数据库 MySQL
最全MySQL面试60题(含答案):存储引擎+数据库锁+索引+SQL优化等
最全MySQL面试60题(含答案):存储引擎+数据库锁+索引+SQL优化等
254 0
|
8天前
|
存储 SQL 关系型数据库
Mysql系列-4.Mysql存储引擎-InnoDB(下)
Mysql系列-4.Mysql存储引擎-InnoDB
51 0
|
8天前
|
存储 缓存 关系型数据库
MySQL - 存储引擎MyISAM和Innodb
MySQL - 存储引擎MyISAM和Innodb
|
8天前
|
存储 缓存 关系型数据库
MySQL两种存储引擎及区别
MySQL两种存储引擎及区别
28 4
MySQL两种存储引擎及区别
|
8天前
|
存储 SQL 关系型数据库
Mysqlslap性能测试MySQL三种存储引擎
Mysqlslap性能测试MySQL三种存储引擎
|
8天前
|
存储 缓存 关系型数据库
mysql存储引擎
mysql存储引擎