(精华)Mysql内存、磁盘架构图
2024-02-01 11:10:49 55 举报
登录查看完整内容
MySQL的内存和磁盘架构图展示了数据库管理系统在处理数据时如何利用硬件资源。在内存部分,主要包括查询缓存、连接池和缓冲区等组件。查询缓存用于存储经常被访问的查询结果,以提高查询速度;连接池则管理着数据库与客户端之间的通信连接;缓冲区则用于暂存数据,以减少磁盘I/O操作。 在磁盘部分,主要包括表空间、索引和日志等组件。表空间是用于存储实际数据的存储区域,可以划分为多个文件;索引则是用于加速数据检索的结构;日志则记录了数据库的所有更改操作,以便在发生故障时进行恢复。此外,还有InnoDB存储引擎负责管理内存和磁盘之间的数据交换,以及执行事务处理等功能。
作者其他创作
大纲/内容
t.ibd
双写缓存区Doublewrite buffer
session
change buffer
global
磁盘结构
数据字典信息
Innodb 内存,磁盘架构
Redo Log
undo 表空间(.ibu)
InnoDB 内存结构
额外内存池inodb_additional_mem_poll_size
OS Cache
system
数据页data page
通过os cache再刷到磁盘,顺序写,速度快
插入缓存insert buffer
undo 002.ibu
通用表空间(.ibd)
ib_16384_0dblwr
user defined
独立表空间(.ibd)
ib_logfile0
锁信息lock info
索引页index page
存储索引和数据
为了提升数据库的读写性能,InnoDB为数据库增加了一块连续的内存缓存区,即innodb_buffer_pool,默认大小128M,所有读写操作都发生在这个缓存池内。Change Buffer在 MySQL5.5 之前,叫插入缓冲(Insert Buffer),只针对 INSERT 做了优化;现在对 DELETE 和 UPDATE 也有效,叫做写缓冲(Change Buffer)。
ib_logfile1
系统表空间(.ibdata1)
undo 001
双写缓冲文件(Doublewrite buffer)
自适应哈稀索引adaptive hash index
MySQL5.5后叫做Change Buffer
t2.ibd
缓冲池 innodb buffer pool
t1.ibd
o_direct,数据直接随机写入磁盘,速度慢
临时表空间(.ibt)
temp_1.ibt
ib_16384_1dblwr
ibtmp1
重做日志缓冲redolog buffer
0 条评论
回复 删除
下一页