Innodb_buffer_pool_read
> show status like 'Innodb_buffer_pool_read_%'; +---------------------------------------+--------------+ | Variable_name | Value | +---------------------------------------+--------------+ | Innodb_buffer_pool_read_ahead_rnd | 0 | | Innodb_buffer_pool_read_ahead | 115434683 | | Innodb_buffer_pool_read_ahead_evicted | 0 | | Innodb_buffer_pool_read_requests | 113290429682 | | Innodb_buffer_pool_reads | 4372247 | +---------------------------------------+--------------+ 5 rows in set (0.00 sec) Thu Oct 24 09:32:55 2019 >
Innodb_buffer_pool_read_requests表示read请求的次数,
Innodb_buffer_pool_reads表示从物理磁盘中读取数据的请求次数,
所以innodb buffer的read命中率就可以这样得到:(Innodb_buffer_pool_read_requests - Innodb_buffer_pool_reads) / Innodb_buffer_pool_read_requests * 100%。
一般来讲这个命中率不会低于99%,如果低于这个值的话就要考虑加大innodb buffer pool,大家通常建议设置为系统内存的50%-80%
igoodful@qq.com