MySQL学习总结-基础架构概述


Posted in MySQL onApril 05, 2021

1、总述

MySQL可以分为Server层存储引擎层
MySQL学习总结-基础架构概述
Server层: 包括大多数 MySQL 中的核心功能,所有跨存储引擎的功能也在这一层实现,包括存储过程、触发器、视图等。
存储引擎层: 包括 MySQL 常见的存储引擎(MyISAM、InnoDB和Memory 等),最常用的是InnoDB,也是现在MySQL的默认存储引擎。存储引擎也可以在创建表的时候手动指定。

2、连接器

用于连接用户和MySQL数据库。
1、用户发起连接(mysql -u 用户名 -p 密码);
2、连接器会根据用户输入的用户名和密码验证你的登录身份;
3、根据权限表中的记录来判定用户的权限。

3、查询缓存

以key-value 对的形式存储以前执行过的语句及结果;被直接放到内存中,可以直接返回结果。
key: 查询语句
value: 查询结果

注: 不建议使用;因为只要在 MySQL 中对某一张表执行了更新操作,那么所有的查询缓存就会失效,对于更新频繁的数据库来说,查询缓存的命中率很低

4、分析器

用于对SQL语句的词法分析和语法分析。
词法分析: 解析SQL语句,识别其中的关键字,字符串,空格;
语法分析: 对词法分析的结果,进行分析,判断SQL语句是否符合MySQL语法。

5、优化器

根据数据库统计信息、索引等,选择出一种效率更高的执行方案。

6、执行器

1、判断是否有执行这条语句的权限
2、执行器就会根据表的引擎定义,去使用这个引擎提供的接口。

7、SQL语句执行顺序

MySQL学习总结-基础架构概述
WHERE 和 ON 的区别
如果有外部列,ON 针对过滤的是关联表,主表(保留表)会返回所有的列;如果没有添加外部列,两者的效果是一样的;

对主表的过滤应该使用 WHERE;对于关联表,先条件查询后连接则用 ON,先连接后条件查询则用 WHERE;

8、临时表

MySQL 在执行 SQL 语句的过程中,通常会临时创建一些存储中间结果集的表,临时表只对当前连接可见,在连接关闭时,临时表会被删除并释放所有表空间。

MySQL 相关文章推荐
如何使用Maxwell实时同步mysql数据
Apr 08 MySQL
解决mysql的int型主键自增问题
Jul 15 MySQL
MySQL去除重叠时间求时间差和的实现
Aug 23 MySQL
深入解析MySQL索引数据结构
Oct 16 MySQL
深入讲解数据库中Decimal类型的使用以及实现方法
Feb 15 MySQL
MySQL Server层四个日志的实现
Mar 31 MySQL
Innodb存储引擎中的后台线程详解
Apr 03 MySQL
MySQL sql模式设置引起的问题
May 15 MySQL
mysql幻读详解实例以及解决办法
Jun 16 MySQL
mysql sql常用语句大全
Jun 21 MySQL
MySQL远程无法连接的一些常见原因总结
Sep 23 MySQL
MySQL下载安装配置详细教程 附下载资源
Sep 23 MySQL
MySQL基础(一)
Apr 05 #MySQL
MySQL基础(二)
MySQL锁机制
MySQL令人咋舌的隐式转换
Apr 05 #MySQL
mysql知识点整理
Apr 05 #MySQL
浅析InnoDB索引结构
Apr 05 #MySQL
MySQL入门命令之函数-单行函数-流程控制函数
Apr 05 #MySQL
You might like
php array_flip() 删除数组重复元素
2009/01/14 PHP
PHP+MySQL 手工注入语句大全 推荐
2009/10/30 PHP
PHP读取XML格式文件的方法总结
2017/02/27 PHP
PHP保存Base64图片base64_decode的问题整理
2019/11/04 PHP
jQuery使用动态渲染表单功能完成ajax文件下载
2013/01/15 Javascript
jquery清空表单数据示例分享
2014/02/13 Javascript
JavaScript利用HTML DOM进行文档操作的方法
2016/03/28 Javascript
JS在Chrome浏览器中showModalDialog函数返回值为undefined的解决方法
2016/08/03 Javascript
JS对HTML表格进行增删改操作
2016/08/22 Javascript
EasyUI创建对话框的两种方式
2016/08/23 Javascript
jQuery检查元素存在性(推荐)
2016/09/17 Javascript
Angular和百度地图的结合实例代码
2016/10/19 Javascript
手机软键盘弹出时影响布局的解决方法
2016/12/15 Javascript
原生JS实现圣旨卷轴展开效果
2017/03/06 Javascript
解决Vue2.0中使用less给元素添加背景图片出现的问题
2018/09/03 Javascript
vue style width a href动态拼接问题的解决
2020/08/07 Javascript
JS将指定的某个字符全部转换为其他字符实例代码
2020/10/13 Javascript
Python2.x版本中基本的中文编码问题解决
2015/10/12 Python
Python将多个excel表格合并为一个表格
2021/02/22 Python
opencv python 图像去噪的实现方法
2018/08/31 Python
python实现异常信息堆栈输出到日志文件
2019/12/26 Python
python next()和iter()函数原理解析
2020/02/07 Python
基于python计算并显示日间、星期客流高峰
2020/05/07 Python
CSS3之transition实现下划线的示例代码
2018/05/30 HTML / CSS
CSS3 @media的基本用法总结
2019/09/10 HTML / CSS
雅萌 (YA-MAN) :日本美容家电领域的龙头企业
2017/05/12 全球购物
联想西班牙官网:Lenovo西班牙
2018/08/28 全球购物
安踏官方商城:anta.cn
2019/12/16 全球购物
牵手50香港:专为黄金岁月的单身人士而设的交友网站
2020/08/14 全球购物
工程地质勘察专业大学生求职信
2013/10/13 职场文书
签约仪式主持词
2014/03/19 职场文书
节能减排倡议书
2014/04/15 职场文书
支部鉴定材料
2014/06/02 职场文书
Python基于百度API识别并提取图片中文字
2021/06/27 Python
vue如何实现关闭对话框后刷新列表
2022/04/08 Vue.js
如何优化vue打包文件过大
2022/04/13 Vue.js