![如何防止 InnoDB 日志文件损坏?](https://linux22.com/image/564158/%E5%A6%82%E4%BD%95%E9%98%B2%E6%AD%A2%20InnoDB%20%E6%97%A5%E5%BF%97%E6%96%87%E4%BB%B6%E6%8D%9F%E5%9D%8F%EF%BC%9F.png)
我们在 Amazon EC2 上运行一个 MySQL 服务器,该服务器使用 4 个 EBS 卷上的 600GB 存储空间。大约每 2-3 周,活动的 InnoDB 日志文件就会损坏,MySQL 将不允许对这些表进行任何访问(表示 InnoDB 引擎已禁用),直到我们关闭 MySQL、删除日志文件并重新启动 MySQL。
我已经使用 MySQL 和 InnoDB 近 10 年了,我偶尔才遇到这个问题;从来没有这么频繁。这是在 Ubuntu 9,MySQL 版本 5.1.41 上。
关于如何避免频繁出现此错误,有什么建议吗?
答案1
显著地 提高innodb_log_file_size
-- 至少尝试 100MB。InnoDB 日志文件损坏的最常见原因是大型事务导致日志文件溢出并用其尾部覆盖事务的头部。
确保先关闭服务器并删除现有日志文件。如果您担心的话,请进行备份。