mysql write buffer_mysql 优化之 doublewrite buffer 机制

是什么?

doublewrite buffer是mysql 系统表空间的一块存储区域。

有什么用?

在Innodb将数据页写到数据存储文件之前,存储从Innodb缓存池刷过来的数据页。且只有将数写入doublewriter buffer后,Innodb才会进行数据页的物理存储。如果在数据页写盘时发生操作系统、存储系统、或者myql进程中断,Innodb可以从doublewriter buffer存储中找回丢失的数据页备份。

性能影响?

虽然数据总是双份写,但并不意味着需要双倍的IO操作,或者IO能力。通过向操作系统发送fsync()命令,将数据以较大的连续数据块的形式写入doublewriter buffer。

doublewriter buffer多数情况下是默认开启的,可以通过配置innnodb_doublewrite=0关闭

关闭doublewriter buffer可以在一定程度上提升数据库层面性能,但是要处理好容灾。可以在应用层面通过重试补偿,或者数据检查机制等处理写中断引发的问题。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值