14.4.3.2 Configuring Multiple Buffer Pool Instances 配置多个buffer pool 实例:

来源:互联网 发布:linux命令行查看文件 编辑:程序博客网 时间:2024/06/09 17:45
14.4.3.2 Configuring Multiple Buffer Pool Instances  配置多个buffer pool 实例:对于系统 buffer pool 有多个G的范围, 把buffer pool 分成多个单独的实例可以改进并发,降低不同threads 读取和写到cached pages 的竞争。这个功能是典型的用于系统有多个G范围的buffer pool size .多个buffer poll 实例是通过 innodb_buffer_pool_instances 配置选项,你也需要调整 innodb_buffer_pool_size对应的值+-------------------------+------------+| Variable_name           | Value      |+-------------------------+------------+| innodb_buffer_pool_size | 8589934592 |+-------------------------+------------+1 row in set (0.00 sec)mysql> show variables like '%innodb_buffer_pool_instances%';+------------------------------+-------+| Variable_name                | Value |+------------------------------+-------+| innodb_buffer_pool_instances | 8     |+------------------------------+-------+1 row in set (0.00 sec)当InnoDB buffer pool 是大的,很多的数据请求可以被满足通过从内存中检索。你可能遇到多个threads 同时访问buffer pool的瓶颈。你可以启用多个buffer pools 来最小化竞争。每个page 存储或者读取是buffer pool 分配到一个随机的buffer pool里,使用一个hashing function.每个buffer pool 管理它自己的free lists,flush lists,LRU和所有其他数据结构又它自己的buffer pool mutex 保护。启用 multiple buffer pool instances, 设置 innodb_buffer_pool_instances 配置选项值大于1最大到64.这个选项生效只有当你设置 innodb_buffer_pool_size 到大于1GB.你指定的总大小是被分到所有的buffer pools.为了最好的性能,指定一个组合 innodb_buffer_pool_instances and innodb_buffer_pool_size 每个buffer pool 实例 至少是1GB

0 0
原创粉丝点击