1. 在Buffer Pool中形成脏页(与磁盘中的数据不一致)
2. Redo Log Buffer缓存事务中的事务更改记录,再刷新到磁盘中的Redo log文件中
可通过修改参数设置文件大小、个数和刷新策略(参数设为1最安全,两个过程都是按每笔刷新一次)
3.记录Binlog日志文件(由Mysql服务层生成,以事务的形式记录了DDL和DML语句,用于恢复恢复数据;以日志追加的形式进行记录,没有大小限制)
4.提交,完成事务
刷脏时机(由刷脏线程完成)
1.当Redo log 文件写满
2.Buffer Pool 空间不够了
3.Mysql服务空闲状态
4.Mysql正常关闭
刷脏方式:双写机制(double write)
刷脏时不直接写入对应的ibd文件,而是先拷贝到double write buffer(2M)中,再从double write buffer 写入到double write 段对象(两个区,每个1M),再写入对应ibd文件。
当写入double write buffer发生crash,ibd是干净的;当写入ibd,double write buffer是干净的