• InnoDB在什么情况下会触发检查点checkpoint ?


    InnoDB在什么情况下会触发检查点 checkpoint ?
    
    
    一、MySQL的checkpoint分类
    1、sharp checkpoint(激烈检查点,要求尽快将所有脏页都刷到磁盘上,对I/O资源的占有优先级高)
    2、fuzzy checkpoint(模糊检查点,会根据系统负载及脏页数量适当平衡,不要求立即将所有脏页写入磁盘,这事默认的方式)
    
    
    二、触发时机
    1、数据库正常关闭时,即innodb_fast_shutdown=0时需要执行sharp checkpoint
    2、redo log发生切换时或者redo log快满的时候进行fuzzy checkpoint
    3、master thread每隔1秒或10秒定期进行fuzzy checkpoint
    4、innodb保证有足够多的空闲page,如果发现不足,需要移除lru list末尾的page,如果这些page是脏页,那么也需要fuzzy checkpoint
    5、innodb buffer pool中脏页比超过innodb_max_dirty_pages_pct时也会触发fuzzy checkpoint
    
    
    三、checkpoint相关参数及状态
    1、innodb_fast_shutdown
    2、innodb_io_capacity/innodb_io_capacity_max
    3、innodb_lru_scan_depth
    4、innodb_max_dirty_pages_pct/innodb_max_dirty_pages_pct_lwm
    5、Innodb_buffer_pool_pages_dirty/Innodb_buffer_pool_pages_total
    6、Innodb_buffer_pool_wait_free
  • 相关阅读:
    第三讲:增长全局观
    搭建安卓环境
    ~~
    天气阴
    天气晴
    Spark性能优化指南——高级篇
    Ceph Jewel 10.2.3 环境部署
    《你只是看起来很努力》--读书笔记
    博客园基础环境配置
    Spark 1.3.0 单机安装
  • 原文地址:https://www.cnblogs.com/zhouwanchun/p/13141780.html
Copyright © 2020-2023  润新知