InnoDB存储引擎首先将重做日志信息先放入到重做日志缓冲区,然后按一定的频率将其刷新到重做日志文件。
innodb_log_buffer_size参数控制了重做日志缓冲区的大小,默认是8MB。
mysql> show variables like 'innodb_%log%buffer_size'\G;
重做日志在下列三种情况下会将重做日志缓冲中的内容刷新到外部磁盘的重做日志文件中:
1、Master Thread每1秒将重做日志缓冲刷新到重做日志文件
2、每个事务提交时会将重做日志缓冲刷新到重做日志文件
3、当重做日志缓冲池剩余空间小于1/2时,重做日志缓冲刷新到重做日志文件