时间:2021-07-01 10:21:17 帮助过:18人阅读
6、在将redo日志文件对应的脏页刷入磁盘的过程中,事务没有办法提交,影响业务。
二、原理分析
1、通过对redo log的修改时间查看日志文件切换时间
通过shell> ls -l /mydata/ib_logfile*,查看开始修改的时间和最后修改的时间,计算logfile切换时间。
2、如果redo日志文件切换时间过短,也就是切换频繁,就很容易导致写抖动
1、正常业务繁忙的会是10-20分钟;
2、如果是比一般的时间短,说明文件小,切换频繁。
三、解决写抖动问题
1、增加redo日志文件数量
- mysql> show global variables like ‘innodb_log_files_in_group‘;
- +---------------------------+-------+
- | Variable_name | Value |
- +---------------------------+-------+
- | innodb_log_files_in_group | 2 |
- +---------------------------+-------+
- 1 row in set (0.01 sec)
2、扩大日志文件容量
- mysql> show global variables like ‘innodb_log_file_size‘;
- +----------------------+----------+
- | Variable_name | Value |
- +----------------------+----------+
- | innodb_log_file_size | 50331648 |
- +----------------------+----------+
- 1 row in set (0.01 sec)
3、提高log file的写性能:将日志文件放到写性能优质的磁盘上
- mysql> show global variables like ‘innodb_log_group_home_dir‘;
- +---------------------------+-------+
- | Variable_name | Value |
- +---------------------------+-------+
- | innodb_log_group_home_dir | ./ |
- +---------------------------+-------+
- 1 row in set (0.01 sec)
注意:
上面的这三个参数都非动态参数,需要在配置文件/etc/my.cnf中进行修改保存,再重新启动数据库实例才能生效。
MySQL存储写入性能严重抖动分析
标签:修改时间 value files mys 左右 原理图 ODB 文件 height