MySQL innodb_buffer_pool_size 优化

1、Innodb buffer pool 缓存池中包含数据的页的数目,包括脏页。单位是 page

show global status like 'Innodb_buffer_pool_pages_data';

2、innodb buffer pool 的页总数目。单位是page

show global status like 'Innodb_buffer_pool_pages_total';

3、编译的 InnoDB 页大小 (默认 16KB)。

show global status like 'Innodb_page_size';

调优方法:

计算 val = Innodb_buffer_pool_pages_data / Innodb_buffer_pool_pages_total *100% 的值

如果 val > 95% 则考虑增大 innodb_buffer_pool_size, 建议设置为:

物理内存的75%

如果 val < 95% 则考虑减小 innodb_buffer_pool_size,建议设置为:

Innodb_buffer_pool_pages_data * Innodb_page_size * 1.05 / (1024*1024*1024)

命令行设置命令

# 查看
show global variables like 'innodb_buffer_pool_size';

# 设置
set global innodb_buffer_pool_size = 2147483648;

# 缓冲池字节大小,单位kb,如果不设置,默认为128M

innodb_buffer_pool_size = 2147483648  # 设置2G

猜你喜欢

转载自blog.csdn.net/mshxuyi/article/details/106850338