【发布时间】:2014-02-19 22:15:51
【问题描述】:
我需要对我的 innodb 引擎具有高功率容错能力,并且我无法更改硬件配置。 你建议打电话吗
FLUSH ENGINE LOGS;
经过很重要的操作? 是否有助于防止因断电或进程崩溃而导致数据丢失?
【问题讨论】:
标签: mysql logging innodb flush fault-tolerance
我需要对我的 innodb 引擎具有高功率容错能力,并且我无法更改硬件配置。 你建议打电话吗
FLUSH ENGINE LOGS;
经过很重要的操作? 是否有助于防止因断电或进程崩溃而导致数据丢失?
【问题讨论】:
标签: mysql logging innodb flush fault-tolerance
使用FLUSH ENGINE LOGS 应该是不必要的。你的 MySQL/InnoDB 配置应该有:
innodb_flush_logs_at_trx_commit = 1sync_binlog = 1除此之外,如果您的硬件不可靠,则无能为力。
【讨论】:
sync_binlog 标志只控制二进制日志是否刷新到磁盘。二进制日志用于复制,因此它们有助于复制不会因崩溃而完全中断。如果您看到数据丢失多达 3-4 次重新启动,这意味着数据永远不会同步到磁盘,我个人会寻找新的主机。