InnoDB是事务安全的存储引擎,架构设计上类似于Oracle数据库。其特点是支持ACID,行锁设计,支持MVCC,支持外键,提供一致性非锁定读等。
InnoDB体系结构

InnoDB存储引擎主要包括内存池和后台进程。
InnoDB存储引擎有多个内存块,这些内存块组成了更大的内存池,负责如下工作:
1.维护所有进程/线程需要访问的多个内部数据结构;
2.缓存磁盘上的数据,方便快速地读取,同时在对磁盘文件的数据修改之前在这里缓存;
3.重做日志(redo log)缓冲;等等;
后台线程的主要作用是负责刷新内存池中的数据,保证缓冲池中的内存缓存的是最新的数据。此外将已修改的数据文件刷新到磁盘文件,同时保证在数据库发生异常的情况下InnoDB能恢复到正常运行状态。
后台线程
InnoDB存储引擎后台有多个线程分别处理不同的任务。
Master Thread
Master Thread 是一个核心线程,主要负责将缓冲池中的数据异步刷新到磁盘,保证数据的一致性,包括脏页的刷新、合并插入缓冲(INSERT BUFFER)、回滚页(UNDO PAGE)的回收等。
&nb

最低0.47元/天 解锁文章
2259

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



