innoDB同时支持多个BufferPool实例

  InnoDB用来缓存他的数据和索引的内存缓冲区大小,把innodb_buffer_pool_size参数值设的越高,访问表中的数据需要的磁盘IO就越少。尽管这样,建议还是不要把它设置的太大,因为对物理内存的竞争可能在操作系统上导致内存调度。

  innodb_buffer_pool_size是innoDB性能的决定性因素,如果你的数据库大小小于innodb_buffer_pool_size设置的缓冲池大小,那么此时数据库的性能是最好的,因为客户端访问的数据都在内存里。

   innodb_buffer_pool缓冲池复制管理这free list,按照LRU算法,MySQL会根据哪些数据属于LRU而将其移出内存。从而腾出空间加载其他数据,当innodb_buffer_pool缓冲池达到很大时,如果某个线程正在更新缓冲区,将会照成其他线程必须等待的瓶颈。

   ps:innodb -file_pool_size必须大于1GB,生成innodb_buffer_pool多个实例在有效,最多操作只需64个innoDB_buffer_pool实例。

   vi /etc/my.cnf

   innodb_buffer_instance=3

  show engine innodb status\G查看命令

  


你可能感兴趣的:(innoDB同时支持多个BufferPool实例)