MySQL8.0 InnoDB日志

MySQL8.0 InnoDB日志

1.InnoDB日志介绍

InnoDB日志保存着已经提交的数据变化,用于在崩溃恢复时把数据库的变化恢复到数据文件,除了崩溃恢复,其他时候都不会读日志文件。向日志文件写数据的方式是顺序写,这比离散写的效率要高很多,而向数据文件写数据通常是离散写比较多。

日志缓冲区是一个内存缓冲区,InnoDB使用它来缓冲重做日志事件,然后再将其写入磁盘。日志缓冲区的大小由系统参数innodb_log_buffer_size控制,默认是16 MB,在大多数情况下是够用的。

如果有大型事务或大量较小的并发事务,可以考虑增大innodb_log_buffer_size,这个参数在MySQL 8中可以动态设置。
默认在datadir下有两个48MB的日志文件ib_logfile0和ib_logfile1。

2.日志产生量