MySQL当你CRUD时BufferPool中发生了什么?( 三 )



MySQL当你CRUD时BufferPool中发生了什么?

文章插图
 
九、如何规划你的Buffer Pool大小 
 
推荐将Buffer Pool的总大小设置为服务器内存的 50%~60%左右
 
 
BufferPool总大小 = (chunkSize * bufferPoolInstanceNum)*2
 
 
十、Buffer Pool的预热机制 
 
这种机制实际上是想让重启后的MySQL快速适应大规模的流量请求 。
 
 
InnoDB 在服务器关闭时为每个缓冲池保存一部分最近高频使用的页面,并在服务器启动时恢复这些页面 。保存多大比例的缓存页由参数innodb_buffer_pool_dump_pct控制 。
 
 
在启动时还原缓冲池,实际上会缩短预热的时间 。
 
 
你可以通过下面的方式配置该参数
 
 
Copy# 通过命令SET GLOBAL innodb_buffer_pool_dump_pct=40;# 通过文件[mysqld]=40 
 
参数innodb_buffer_pool_dump_at_shutdown控制 MySQL关闭时保存缓冲池的状态,默认为on的状态 。
 
 
启动参数--innodb-buffer-pool-load-at-startup 表示启动MySQL的时候恢复缓冲池中的状态,默认也是开启的 。
 




推荐阅读