mysql 双1设置

举报
snowofsummer 发表于 2021/02/04 09:24:40 2021/02/04
【摘要】 双1设置:(适合数据安全性要求非常高,而且磁盘IO写能力足够支持业务(磁盘为 PCIE SSD))sync_binlog、innodb_flush_log_at_trx_commit 这两个参数都要设置为1。// mysqld 服务崩溃或者服务器主机 crash 的情况下,binary log 只有可能丢失最多一个语句或者一个事务。sync_binlog该参数表示事务写入 binary lo...

双1设置:(适合数据安全性要求非常高,而且磁盘IO写能力足够支持业务(磁盘为 PCIE SSD)

sync_binlog、innodb_flush_log_at_trx_commit 这两个参数都要设置为1。

// mysqld 服务崩溃或者服务器主机 crash 的情况下,binary log 只有可能丢失最多一个语句或者一个事务。

sync_binlog

该参数表示事务写入 binary log 并使用 fdatasync() 函数同步到磁盘的过程。
取值为0:mysql 自己不主动同步,依赖操作系统本身不定期把文件内容刷新到磁盘。性能最佳

取值为1:每次事务提交后将 binlog_cache 中的数据强制写入磁盘 bin log日志中,是最慢的,但是最安全

取值 >1:当进行n次事务提交后,mysql 将 binlog_cache 中的数据强制写入磁盘中。

innodb_flush_log_at_trx_commit

该参数表示 log buffer 写入 log file 以及刷新到磁盘的过程。
取值为0:log buffer 每秒写入日志文件 log file 并刷新 flush 到磁盘。这种情况下,mysql 的日志刷写操作和事务提交操作没有关系。因此 mysql 的性能是最好的时刻。不过不安全

取值为1:每次事务提交时,log buffer 会被写入到日志文件并且还要刷写到磁盘上。由于每次事务都要提交到I/O设备,因此会慢一点,不过是最安全的。

取值为2:0和1的中间效果,即每次的事务提交会写入 log buffer,而刷写到磁盘则是一秒进行一次。性能属于一般。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。