Loading

[Mysql]日志刷盘总结

Mysql

redolog的刷盘时机

  • mysql正常关闭的时候

  • redolog buffer写入超过一半的时候

  • 事务提交的时候

    • 0每次提交事务,redolog留在buffer中不写入磁盘
    • 1每次提交事务,redolog写入磁盘
    • 2每次提交事务,redolog写入操作系统的文件缓存页面
  • 后台线程每隔一秒写入磁盘一次

    • 0 把redolog buffer中的内容刷盘
    • 2 把page cache中的内容刷盘

binlog的刷盘时机

  • 0 每次提交事务只写到操作系统的文件缓存,交给操作系统合适刷盘 只write

  • 1 每次提交事务都执行write fsync刷盘

  • N,N次提交事务write,有一次fsync

Redis

aof

对AOF的写操作实际上不是直接写到磁盘的,而是写到一个内核中的缓冲区的,然后异步地刷新回磁盘
这个刷新策略有三种appendfsync

  • always 每次写aof就调用fsync,这个性能太差
  • no 永远不主动调用fsync,由系统决定何时刷新到磁盘
  • everysec 每隔一秒调用一次fsync,这个一秒可以配置

rdb

bgsave 和 save

posted @   Duancf  阅读(32)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
点击右上角即可分享
微信分享提示