前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >给你汇总了MySQL各个版本的体系结构图

给你汇总了MySQL各个版本的体系结构图

作者头像
July
发布2024-03-21 18:13:46
1310
发布2024-03-21 18:13:46
举报
文章被收录于专栏:数据库干货铺数据库干货铺

InnoDB是MySQL中最重要的存储引擎之一,它的架构设计旨在提供高可靠性和高性能。以下是InnoDB架构的简要介绍:

InnoDB架构主要包括两种结构:内存中结构和磁盘上结构。

1. 内存中结构

• 缓冲池(Buffer Pool):缓存频繁访问的数据,减少磁盘I/O操作,提高查询性能。

• 变更缓冲区(Change Buffer):缓存对二级索引页的更改,当这些页不在缓冲池中时,以避免耗时的I/O操作。

• 自适应哈希索引(Adaptive Hash Index):为某些读操作提供快速的内存中查找机制,加速对频繁查询索引页的访问。

• 日志缓冲区(Log Buffer):保存要写入事务日志的更改,通过先写入内存再定期刷新到磁盘上的重做日志,来提高性能。

2. 磁盘上结构

•系统表空间(System Tablespace):存储变更缓冲区,InnoDB使用一个或多个数据文件来存储系统表空间。

• 各个表的独立表空间(File-per-table Tablespaces):每个InnoDB表都可以有自己的表空间。

• 通用表空间(General Tablespaces):可以容纳多个表的表空间。

• 撤销表空间(Undo Tablespaces):存储撤销日志,这些日志记录了事务进行中必须保留的旧数据版本。

• 临时表空间(Temporary Tablespaces):存储临时数据,如排序操作或哈希索引创建过程中的数据。

• 双写缓冲区(Doublewrite Buffer):保护数据不因崩溃而损坏,通过先写入双写缓冲区再写入表空间文件。

• 重做日志(Redo Log):记录数据变更,以便在系统崩溃后恢复数据。

• 撤销日志(Undo Logs):记录了事务进行中必须保留的旧数据版本,以支持事务回滚和MVCC。

3. 各个版本的体系架构图

MySQL5.5

MySQL5.6

MySQL5.7

MySQL8.0

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2024-03-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 数据库干货铺 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
对象存储
对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档