配置原则:
1.配置为系统内存的50%至75%。默认缓冲池大小为128 MB
2.为了避免潜在的性能问题,块的数量(innodb_buffer_pool_size/innodb_buffer_pool_chunk_size)不应超过1000
select @@innodb_buffer_pool_size/@@innodb_buffer_pool_chunk_size;
3.缓冲池大小必须始终等于或倍数为
增加或减少时innodb_buffer_pool_size,操作以块的形式执行。块大小由innodb_buffer_pool_chunk_size配置选项,该选项的默认值为128M。
innodb_buffer_pool_size = n(innodb_buffer_pool_chunk_size * innodb_buffer_pool_instances)
如果不等于乘积的倍数,缓冲池将会自动调整为乘积的数值,可以用下方命令查看:
select @@innodb_buffer_pool_size/(@@innodb_buffer_pool_chunk_size * @@innodb_buffer_pool_instances);
4.在具有大量内存的系统上,可以通过将缓冲池划分为多个来提高并发性
innodb_buffer_pool_instances系统变量定义缓冲池实例的数量
配置方式
1.在线调整
SET GLOBAL innodb_buffer_pool_size=402653184;
2.编辑配置文件,并重启
[mysqld]
innodb_buffer_pool_size = 30G
3.innodb_buffer_pool_chunk_size可以增加或减少1MB(1048576字节)单位,但只能在启动时、命令行字符串或MySQL配置文件中进行修改
shell> mysqld --innodb-buffer-pool-chunk-size=134217728
[mysqld]
innodb_buffer_pool_chunk_size=134217728
关于缓冲池介绍请点击查看:缓冲池详解