第二章 InnoDB存储引擎

2.1 InnoDB存储引擎概述

InnoDB从MySQL5.5版本开始是默认的表存储引擎,是第一个完整支持ACID事务的MySQL存储引擎
特点是行锁设计、支持MVCC、支持外键、提供一致性非锁定读,同时被设计用来最有效利用以及使用内存的CPU
 

2.2 InnoDB存储引擎的版本

InnoDB存储引擎包含于所有MySQL数据库的二进制发行版本中
从MySQL5.1版本时,MySQL数据库允许存储引擎开发商以动态方式加载引擎,所以在5.1版本中,可以支持两个版本的InnoDB:一个是静态编译的InnoDB版本可视为老版本的InnodDB;另一个是动态加载的InnoDB版本(官方称为Innodb plugin,InnoDB 1.0.x版本)
 

2.3 InnoDB体系架构

 

 

InnoDB的架构由内存池和后台线程构成
InnoDB存储引擎有多个内存块,这些内存块组成了一个大的内存池负责如下工作:
  • 维护所有进程/线程需要访问的多个内部数据结构
  • 缓存磁盘上的数据,方便快速读取,同时在对磁盘文件的数据修改之前在这里缓存
  • 重做日志缓冲
  • ....
后台线程的主要作用是负责刷新内存池中的数据,保证缓存池中的内存缓存的是最新的数据,此外将已修改的数据文件刷新到磁盘文件,同时保证在数据库发生异常情况下InnoDB能恢复到正常运行状态

本文作者:初夏†失忆

本文链接:https://www.cnblogs.com/Esummer/p/18237925

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   初夏†失忆  阅读(2)  评论(0编辑  收藏  举报
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
收起