zoukankan      html  css  js  c++  java
  • 14.3.5 Configuring InnoDB Change Buffering

    14.3.5 Configuring InnoDB Change Buffering

    14.3.5.1 Configuring the Change Buffer Maximum Size

    当 INSERT, UPDATE, and DELETE操作在表上执行, 索引列的值(特别是secondary keys的值)

    是经常在一个不排序的顺序,需要大量的I/O 带来给secondary indexes

    InnoDB 有一个change buffer 用于caches 对secondary index I/O操作的缓存

    通过不理解读取磁盘的页。缓存的改变是被合并当页被加载到buffer,

    更新的页随后刷新到磁盘。InnoDB 主thread 合并缓存的changes 当server是空闲的时候,或者是一个缓慢的关机。

    因为它可以导致更少的磁盘读取和写入,change buffer 功能是很宝贵的对于负载是I/O密集型的,

    比如有大量的DML操作 比如批量插入。

    然而,change buffer 占用buffer pool的一部分,降低了可用内存用于cache 数据页。

    如果工作集总是适合Buffer pool, 或者你的表有相对较少的secondary indexes.

    禁用change buffer 是有用的, 如果工作集占用整个在buffer ,changes buffer 不利用额外的负载,

    因为它只使用与那些不在buffer pool的pages.

    你可以控制extent ,InnoDB 执行change buffering 使用innodb_change_buffering 配置参数

    mysql> show variables like ‘%innodb_change_buffering%’;
    +————————-+——-+
    | Variable_name | Value |
    +————————-+——-+
    | innodb_change_buffering | all |
    +————————-+——-+
    1 row in set (0.00 sec)

    你可以启用和禁用buffering 用于 inserts, delete operations(当index records 初始标记用于删除)

    和purge 操作(当index records 是物理删除的)

    一个update 操作是一个insert 和delete 组合。默认是all

    允许的innodb_change_buffering 值包括:

    1.all

    默认值:buffer inserts, delete-marking operations, and purges.

  • 相关阅读:
    在CSS里加下面任何一行代码都可以解决图片之间的间隙
    MasterPage Toolbar
    图解虚拟机VMware服务自动启动
    WSUS完全部署
    DIV全屏覆盖网页
    大型架构.net平台篇(WEB层均衡负载nginx)
    组策略设置及导出导入方法[附上设置好的组策略]
    如何設定定時關機?
    gridview获取当前行索引的方法
    no suject
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13351182.html
Copyright © 2011-2022 走看看