代码改变世界

MySQL修改redo文件的大小和数量

2021-12-30 12:05  abce  阅读(430)  评论(0编辑  收藏  举报

MySQL 5.6.7或者更老的版本,如果想修改innodb日志文件的数量和大小,按照以下的步骤操作。

具体的过程取决于innodb_fast_shutdown的取值,innodb_fast_shutdown的取值决定了在shutdown的时候,system表空间的数据是否是最新的。

如果innodb_fast_shutdown没有设置成2:

1.停止mysql server,确保在关闭的过程中没有错误发生,以确保重做日志中没有未完成事务的信息

2.将老的redo日志文件拷贝到安全的地方,以防在关闭的时候发生什么错误,需要恢复表空间。

3.拷贝后,删除老的redo日志文件

4.编辑my.cnf文件修改redo日志文件配置

5.重新启动mysql server。mysql重新启动的时候,找不到redo日志文件,就会重新创建redo日志文件。

如果innodb_fast_shutdown=2,先将其设置成1,然后再按照上面的步骤执行:

mysql> SET GLOBAL innodb_fast_shutdown = 1;

  

从MySQL 5.6.8开始,innodb_fast_shutdown的取值就和修改redo日志的数量和文件大小无关了。

此外,你也不用再移除老的日志文件了,尽管你可能还是想将老的redo日志文件拷贝到安全的地方,作为一个备份。

修改redo文件的大小和数量按照以下的步骤执行:

1.关闭mysql server,确保没有错误发生

2.编辑my.cnf文件:innodb_log_file_size、innodb_log_files_in_group

3.重启mysql server

mysql检测到innodb_log_file_size和redo文件的大小不一样,就会写一个检查点,关闭和移除老的redo文件,创建新的redo文件并打开。