innodb_buffer_pool_sizes的作用是什么
innodb_buffer_pool_size
是 mysql 中 innodb 存储引擎的一个重要参数,它定义了 innodb 缓冲池的大小。缓冲池是一个内存区域,用于缓存数据库中的数据和索引,以加快数据库的读取操作。
以下是 innodb_buffer_pool_size
的作用:
提高读取性能:将常用的数据和索引加载到内存缓冲池中,可以减少磁盘 i/o 操作,从而提高读取性能。因为内存的读取速度远远快于磁盘的读取速度。
减少磁盘访问:通过增大缓冲池的大小,可以将更多的数据和索引存放在内存中,减少对磁盘的访问次数,从而降低磁盘 i/o 的负载。
提高查询性能:由于数据和索引在缓冲池中的存在,查询操作可以更快速地在内存中完成,而不需要频繁地读取磁盘上的数据。
改善并发性能:缓冲池的存在可以减少对磁盘的并发访问,提高并发读取的性能,从而改善数据库的并发处理能力。
需要注意的是,设置合适的 innodb_buffer_pool_size
大小需要考虑到服务器的可用内存和数据库的工作负载。如果设置过小,可能导致频繁的磁盘 i/o,降低性能;如果设置过大,可能会占用过多的内存资源,导致其他应用程序受影响。因此,需要根据实际情况进行调整和优化。
通过sql修改,重启后会失效
修改缓冲池大小为4g
set global innodb_buffer_pool_size = 4294967296;
查询修改是否生效
use mysql; select @@innodb_buffer_pool_size;
出现下图表示修改成功,
或者进入mysql的容器查看实时日志也会展示修改mysql的innodb_buffer_pool_size信息
通过my.cnf配置修改,永久生效
进入mysql容器,vi /etc/my.cnf,把下面的innodb_buffer_pool_size =128m改为想要修改的配置即可,支持字节,m,g的格式,
如2g,536870912(字节),512m(m)
修改后要重启mysql容器生效。
到此这篇关于mysql 内存缓冲池innodb_buffer_pool_sizes大小调整实现的文章就介绍到这了,更多相关mysql 内存缓冲池大小调整内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!
发表评论