标签:MySQL InnoDB存储引擎
MySQL InnoDB特性:两次写(DoubleWrite)
一、经典Partial page write问题? 介绍doublewrite之前我们有必要了解partial page write(部分页失效)问题。 InnoDB中有记录(Row)被更新时,先将其在Buffer Pool中的page更新,并将这次更新记录到Redo Log file中,这时候Buffer Pool中的该page就是被标记为Dirty。在适……
04-14 立刻查看
MySQL InnoDB Online DDL
一、概述 MySQL DBA 应该都知道,数据库操作里面,DDL 操作(比如 ALTER 等)代价是非常高的,特别是在单表上千万的情况下,加个索引或改个列类型,就有可能堵塞整个表的读写。一个是有些 DDL 操作本身有锁,一个是 MDL 锁。但 DDL 又是一个不可避免的需求,无论是业务迭代,还是整理表碎片都需要。 我们知道如果要收缩一个表,只是 delete……
04-14 立刻查看
MySQL读写IO的操作过程解析
数据库作为存储系统,所有业务访问数据的操作都会转化为底层数据库系统的IO行为(缓存系统也可以当做是key-value的数据库),本文主要介绍访问MySQL数据库的IO流程以及IO相关的参数。 一、MySQL的文件 首先简单介绍一下MySQL的数据文件,MySQL 数据库包含如下几种文件类型: 1)数据文件 (datafile) 存放表中的具体数据的文件。 2……
02-21 立刻查看
MySQL InnoDB历史与架构
一、InnoDB存储引擎 InnoDB是事务安全的MySQL存储引擎,设计上采用了类似于Oracle数据库的架构。通常来说,InnoDB存储引擎时OLTP应用中核心表的首选存储引擎。同样,也正是因为InnoDB的存在,才使MySQL数据库变得更有魅力。目前InnoDB属于MySQL默认存储引擎,并且在MySQL 8.0开始,包括元数据表也都是使用InnoDB……
06-19 立刻查看