MYSQL BUFFER POOL 参数说明及调优

SHOW ENGINE INNODB STATUS

'
----------------------
BUFFER POOL AND MEMORY
----------------------
Total large memory allocated 137428992  buffer pool总大小
Dictionary memory allocated 8832933     数据词典data+index总大小
Buffer pool size   8192                     buffer pool缓存页总数量
Free buffers       1024                   free链表中空闲缓存页数量
Database pages     7049                    lru链表中缓存页数量
Old database pages 2582                    lru链表中冷数据区缓存页数量
Modified db pages  1184                    flush链表中缓存页数量
Pending reads      0                    等待从磁盘上加载进缓存页的数量
Pending writes: LRU 0, flush list 0,     等待从LRU,flush链表中刷入磁盘的数量
single page 0                              缓存页中暂挂的独立页面写入数
Pages made young 935583,                 lru冷数据区域里访问之后转移到热数据区域的缓存页的大小
not young 111908658                      lru冷数据区域里1s内被访问了但没进入热数据区域的缓存页的大小
0.22 youngs/s,                            每秒从冷数据区域进入热数据区域的缓存页的数量
0.00 non-youngs/s                         每秒在冷数据区域里被访问了但不能进入热数据区域的缓存页的数量
Pages read 1041780,                        已经读取缓存页数量
created 603731,                            已经创建缓存页数量
written 48729619                        已经写入缓存页数量
0.00 reads/s, 0.33 creates/s, 6.22 writes/s  每秒钟读取、创建和写入的缓存页数量
Buffer pool hit rate 1000 / 1000,         每1000次访问有多少次是直接命中了buffer pool里的缓存
young-making rate 0 / 1000                 每1000次访问有多少次访问让缓存页从冷数据区域移动到了热数据区域
not 0 / 1000                            每1000次访问没从冷数据区域移动的缓存页数量
Pages read ahead 0.00/s, evicted without access 0.00/s, Random read ahead 0.00/s 预读速率
LRU len: 7049, unzip_LRU len: 0            lru链表里的缓存页的数量    
I/O sum[131]:cur[0], unzip sum[0]:cur[0] 最近50s读取磁盘页的I/O总数
'

# 调优参数

[server]

# buffer pool总大小=(chunk大小 * buffer pool数量)*2的倍数 建议大小设置为机器总内存50%-60%

# buffer pool大小512M 默认128M 可以基于buffer pool chunk动态调整
innodb_buffer_pool_size = 536870912

# buffer pool数量 缓存池内存小于1G 默认1个 如果缓存池大小为8G 高并发优化可以设置为4 
innodb_buffer_pool_instances = 1

# buffer pool chunk大小 默认128M
innodb_buffer_pool_chunk_size = 134217728

# 预读机制触发阈值 默认56个顺序访问数据页
innodb_read_ahead_threshold = 56

# 是否开启连续数据频繁访问预读机制 默认OFF
innodb_random_read_ahead = OFF

# LRU冷热数据比例 默认冷数据37%
innodb_old_blocks_pct = 37

# 冷数据区加载到热数据区的时间间隔 默认1000ms
innodb_old_blocks_time = 1000

 

posted @ 2022-11-25 17:50  java从精通到入门  阅读(109)  评论(0编辑  收藏  举报