MySQL的组成

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介: SQL运行机制概述

image.png

建立连接

建立连接(Connectors&Connection Pool),通过客户端/服务器通信协议与MySQL建立连接。MySQL客户端与服务端的通信方式是“半双工”。对于每一个MySQL的连接,时刻都有一个线程状态来标识这个连接正在做什么。

通讯机制:

  1. 全双工:能同时发送和接收数据,例如平时打电话
  2. 半双工:指某一时刻,要么发送数据,要么接收数据,例如对讲机
  3. 单工:只能发送数据或者只能接收数据

线程状态:

show processlist; //查看用户正在运行的线程状态,root用户查看所有的

  • id:线程id,可以使用kill xx;
  • user:启动这个线程的用户
  • host:发送这个请求的客户端地址
  • db:当前命令在那个库执行
  • command:该线程正在的操作命令
  • Time:表示该线程处于当前状态的时间,单位是秒
  • State:线程状态
  • Info:一般记录线程执行的语句,默认显示前100个字符

查询缓存

查询缓存(Cache&Buffer),这是MySQL的一个可优化查询的地方,如果开启了查询缓存目在查询缓存过程中查询到完全相同的SQL语句,则将查询结果直接返回给客户端;如果没有开启查询缓存或者没有查询到完全相同的SQL语句则会由解析器进行语法语义解析,并生成"解析树”。

  • 缓存Select查询的结果和SQL语句
  • 执行Select查询时,先查询缓存,判断是否存在可用的记录集,要求是否完全相同(包括参数值),这样才会匹配缓存

解析器

查询优化器(Optimizer)根据'"解析树"生成最优的执行计划。MySQL使用很多优化策略生成最优的执行计划,可以分为两类:静态优化(编译时优化)、动态优化(运行时优化)。

查询优化器

查询优化器(Optimizer)根据解析树"生成最优的执行计划。MySQL使用很多优化策略生成最优的执行计划,可以分为两类:静态优化(编译时优化)、动态优化(运行时优化)。

查询执行引擎

查询执行引擎负责执行SQL语句,此时查询执行引擎会根据SQL语句中表的存储引擎类型,以及对应的AP接口与底层存储引擎缓存或者物理文件的交互,得到查询结果并返回给客户端。若开启用查询缓存,这时会将SQL语句和结果完整地保存到查询援存(Cache&Buffer)中,以后若有相同的SQL语句执行则直接返回结果。

相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
3月前
|
存储 关系型数据库 MySQL
mysql技巧
【10月更文挑战第2天】mysql技巧
56 5
|
4月前
|
SQL 关系型数据库 MySQL
JavaWeb基础1——MySQL
SQL语句、DDL、DML、DQL(分组查询、子查询等)、Navicat、约束、 一对多等数据库设计、多表查询(联合查询/连接查询)、事务、函数
JavaWeb基础1——MySQL
|
5月前
|
存储 关系型数据库 MySQL
MySQL1
MySQL
41 5
|
5月前
|
SQL 监控 关系型数据库
mysql统计数据库大小
通过这些方法,数据库管理员可以有效地监控和规划MySQL数据库的存储需求,确保数据库的稳定运行。
78 2
|
8月前
|
SQL 存储 关系型数据库
初识MYSQL
初识MYSQL
124 0
|
存储 安全 关系型数据库
MySQL(上)
MySQL(上)
64 0
|
SQL 存储 缓存
|
SQL 关系型数据库 MySQL
2.初识MySQL
2.初识MySQL
85 0
|
存储 SQL 关系型数据库
盘点一下Mysql中的一些小知识(四)
盘点一下Mysql中的一些小知识(四)
93 0
|
关系型数据库 MySQL 数据库管理
什么是MySQL
什么是MySQL
141 0