tidb的set [sync-log = false]有什么区别和影响

时间:2019-06-20 06:37:48

标签: mysql tidb

在tidb中,当打开sync-log时,磁盘io util可以超过90%,在set sync-log=false之后,它下降到1%,这对配置的不良影响是什么?

1 个答案:

答案 0 :(得分:0)

简而言之,sync-log=true可确保数据安全,但会损害性能。

TiDB基于Raft共识算法,它需要确保每个 提交日志之前,木筏日志会保留在多数磁盘上。为了 确保日志持久存在,我们需要两个步骤:

  1. 写(log_fd,日志)
  2. fsync(log_fd)

如果sync-log=false,TiDB跳过fsync,则有助于提高性能,并且在以下情况下是安全的 没有电源故障。将其设置为true,即使您的数据始终完整无缺 出现电源故障。

查看更多:https://pingcap.com/docs/v3.0/faq/tidb/