buffer pool mysql_mysql 同时支持多个BufferPool

InnoDB 用来缓冲它的数据和索引的内存缓冲区的大小,主要是innodb_buffer_poor_size来设置,这个参数设置的越高,访问表中需要磁盘I/O就越少,如果是一台专用的数据库服务器,那么可以设置为机器内存大小的70%--80%,

InnoDB_Buffer_Pool缓冲池复制管理这free list,flush_list,LRU,如果过大达到几十G,如果某个线程更新资源池,可以造成其它线程等待的瓶颈,

在mysql5.5中,可以增加InnDB_buffer_Pool实例的个数,通过innodb_buffer_pool_instances 参数来增加InnoDB_Buffer_Pool实例的参数,并且使用哈希函数将读取缓存的数据页随机分配到一个缓冲池里面,这样缓冲区实例就自己管理自己的了。就不会造成等待的瓶颈了。

innodb_buffer_pool_size必须大于1GB,生成InnoDB_buffer_pool多实例才有效,最多支持64个InnoDB_Buffer_Pool实例,通过在my.cnf添加innodb_buffer_pool_instances=3来添加,调整后,通过命令show engine innodb status \G;可以看到

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值