全国旗舰校区

不同学习城市 同样授课品质

北京

深圳

上海

广州

郑州

大连

武汉

成都

西安

杭州

青岛

重庆

长沙

哈尔滨

南京

太原

沈阳

合肥

贵阳

济南

下一个校区
就在你家门口
+
当前位置:首页  >  技术干货

MySQL优化之-MySQL的架构体系

发布时间:2023-03-02 20:47:00
发布人:qyf

MySQL优化之-MySQL的架构体系

  mysql优化是java面试中的重点项目,几乎在每一场java面试中都会被问到一些和mysql优化相关的题,所以从今天起老师想和大家分享一套mysql的优化课程,也许有些同学会纳闷,mysql的优化课程为什么开篇就讲【MySQL的架构体系】呢?我们见到了太多单纯讲优化经验的文章,这些文章中提到的技巧确实能解决一些燃眉之急,可是优化过后,我们是否真的理解了为什么要这样优化呢?掌握MySQL的结构体系,能够让我们知其然,又能知其所以然。 以下引用了一位大神的话,和大家共勉。

  看一个事儿千万不要直接陷入细节里,你应该先鸟瞰其全貌,这样能够帮助你从高维度理解问题

  一. MYSQL的架构体系图

  首先老师手绘了一张MySQL的体系架构图,让同学们对完整的MySQL体系架构有一个整体认识

  二. 分层介绍各模块的作用

  从上图中我们可以很清楚的发现MySQL的体系架构分为:服务层,引擎层,存储层 三层。

  接下来老师将大致介绍每一层的作用,为我们日后学习MySQL优化筑基。

  2.1 服务层

  连接池:主要负责用户连接上mysql服务器的工作。

  用户名和密码的认证;

  权限的控制;

  线程的重用和限制,可以起到保护数据库服务器不至于被海量的连接拖垮,造成OOM。

  查询缓存: 提升查询效率。

  缓存的数据以 key-value的形式保存,key就是查询语句;

  由于数据频繁失效弊大于利,MySQL8.0已经把这一块废弃;

  解析器: 对sql命令做解析。

  语法分析: 分析sql语法是否正确。

  词法分析: 识别出sql语句的表名 列名,视图等。

  优化器:sql语句执行前进行优化 包括【索引选择,join顺序调整等】。

  执行器:操作引擎,返回结果。

  2.2 引擎层

  存储引擎概念就是指 mysql数据文件的存储方式包含【存储机制,索引和锁的水平】等信息

  MySQL支持多种存储引擎(数据存储方式)包含【InnoDB、MyISAM、Memory】等。

  MySQL的核心就是存储引擎。

  2.3 物理文件存储层

  存储层主要存储系统的物理文件,并完成和引擎层的交互。

  物理文件包含以下三类:

  日志文件:包含对数据做修改的 Binary log 和记录慢查询的 Slow Query log

  数据文件:包含表结构定义文件,数据文件,索引文件等

  系统配置文件: 包含/etc/my.cnf等

  四. 结语

  正确的了解MySQL的体系结构之后,那么恭喜各位同学,我们已经为学习MySQL优化顺利筑基了。

相关文章

python写入json文件?

python写入json文件?

2023-11-02
vscode设置tab为4个空格?

vscode设置tab为4个空格?

2023-11-02
更新pycharm?

更新pycharm?

2023-11-02
anaconda每次打开都要安装?

anaconda每次打开都要安装?

2023-11-02

最新文章

武汉新媒体行业公司排名

武汉新媒体行业公司排名

2023-11-01
武汉新媒体就业现状好吗

武汉新媒体就业现状好吗

2023-11-01
武汉全媒体行业发展现状及趋势

武汉全媒体行业发展现状及趋势

2023-10-31
武汉全媒体现状

武汉全媒体现状

2023-10-31
在线咨询 免费试学 教程领取