怎么配备MySQL内存buffer pool
发布时间:2021-12-23 10:51:58 所属栏目:MySql教程 来源:互联网
导读:本篇内容介绍了怎么配置MySQL内存buffer pool的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! 内存buffer pool MySQL在启动时默认被分配给512MB RAM;
本篇内容介绍了“怎么配置MySQL内存buffer pool”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! 内存buffer pool MySQL在启动时默认被分配给512MB RAM;其中InnoDB buffer pool 用于缓存表数据、索引及其他的一些辅助缓冲池,为了高效的大量读,buffer pool划分pages;为了高效进行缓存管理,buffer pool 应用多种LRU(least recently used)算法,将相邻的page串成链,管理冷热数据。 1) 配置InnoDB Buffer Pool Size innodb_buffer_pool_size为控制buffer pool大小的参数,通常推荐系统内存的50~70%。默认值128M。innodb_buffer_pool_size参数5.7后可以在线调整,必须等于或整数倍innodb_buffer_pool_chunk_size * innodb_buffer_pool_instances; 例如: mysql> SET GLOBAL innodb_buffer_pool_size=402653184; or my.cnf [mysqld] innodb_buffer_pool_size=402653184 l innodb_buffer_pool_chunk_size参数默认值128M,只能在启动时调整(命令行或者配置文件),且以1M为单位; shell> mysqld --innodb-buffer-pool-chunk-size=134217728 or my.cnf [mysqld] innodb_buffer_pool_chunk_size=134217728 innodb_buffer_pool_instances default value is 1; l innodb_buffer_pool_instances 默认为8 (or 1 if innodb_buffer_pool_size < 1GB),如果是Windows或者32-bit platforms,默认值为系统自动设置(autosized);其作用是划分buffer pool为多个区,提高并发效率。 2) 查询状态 mysql> SHOW STATUS WHERE Variable_name='InnoDB_buffer_pool_resize_status'; Buffer pool resizing progress is also logged in the server error log 3) 预载入buffer pool 要在服务器启动时预载入buffer pool,请启用选项: innodb_buffer_pool_dump_at_shutdown 和innodb_buffer_pool_load_at_startup。 “怎么配置MySQL内存buffer pool”的内容就介绍到这里了,感谢大家的阅读。 (编辑:武汉站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |