我在 CentOS 7 x64 上运行 1GB 的 MySQL 5.7 innodb_log_file_size
,现在无法更改该参数的值。
在崩溃的情况下,大约需要 20 分钟才能恢复,但在这 20 分钟内,mysql 进程似乎没有有效地使用系统资源(即它的 CPU 使用率非常低)。
我想知道是否有任何方法可以使用配置参数强制 MySQL 更快地完成此过程?(例如,通过增加恢复线程数或分配更多 RAM 空间)
答案1
** 也在 DBA stack exchange 上回答过,本来想评论一下,但分数不够!**
首先,有一个记录的错误导致 5.7 的恢复性能下降,这里讨论了这个问题https://bugs.mysql.com/bug.php?id=80788这个问题似乎在 5.7.19 中已经修复
否则,这些建议可能会有所帮助:
https://www.percona.com/blog/2016/06/07/severe-performance-regression-mysql-5-7-crash-recovery/
https://www.percona.com/blog/2014/12/24/innodb-crash-recovery-speed-mysql-5-6/
虽然这些是 Percona 博客上的,但并非针对 Percona。博客上还有其他性能建议,但正如您已经意识到的那样,这些建议主要与 innodb_log_file_size 的设置有关
披露:我在 Percona 工作。