文章目录
InnoDB存储引擎体系架构
本篇主要介绍InnoDB存储引擎的体系架构,之后的几篇博客会详细介绍InnoDB的几大特征以及具体实现!喜欢的朋友可以关注一下!
1.存储引擎
1.1概念
- 首先明确一个概念,存储引擎是基于表的,不是基于数据库的
- 其次存储引擎指的是表的底层物理结构的实现,也就是表在底层是如何存储的,不同的存储引擎存储表的物理结构不同
- MySQL数据库最大的特点就是插件式的表存储引擎,即支持多种存储引擎,目前默认的存储引擎是InnoDB,但是其还支持:MyISAM,NDB,Memory,Archive,Federated,Maria等存储引擎,不同的存储引擎有着自己管理表和存储表的方式
- 下图为Mysql数据库的体系结构图,可以看到底层第二层为多种存储引擎支持:

2.InnoDB体系架构
2.1InnoDB架构图
- InnoDB存储引擎有多个内存块,可以认为这个内存块组成了一个大的内存池,内存池的作用主要有以下几点:
1)维护所有进程/线程需要访问的多个内部数据结构
2)缓存磁盘上的数据,方便快速读取,同时在对磁盘文件的数据修改之前也会在这里缓存
3)重做日志(redo log)缓冲 - InnoDB存储引擎中还包括多个后台线程,这些后台线程的作用主要是刷新内存池中的数据,保证内存缓存的是最近的数据。此外还要将数据文件刷新到磁盘文件,保证数据库发生异常时可以恢复状态。


2886

被折叠的 条评论
为什么被折叠?



