缓冲池
副标题:姜承尧《MySQL技术内幕 InnoDB存储引擎》读书笔记 2
缓冲池的简介
InnoDB引擎是基于磁盘存储的,并将其中的记录按照页的方式进行管理
缓冲池是一块内存区域,在数据库进行读取页的操作,首先将磁盘读到的页放在缓冲池中,称为将页“FIX”在缓冲池。下一次读到相同页时,首先判断该页是否在缓冲池中,若是则直接在缓冲池中读取该页,否则,读取磁盘上的页
对于数据库中页的修改操作,首先修改在缓冲池中的页,然后以一定的频率刷新到磁盘上。但并不是每一次修改都会触发刷回数据的操作,而是按照一种称为checkpoint的机制进行
缓冲池的大小直接影响数据库的整体性能,32位操作系统下,该值最多可以设置为3G,此外用户可以打开操作系统的PAE选项来获得32位OS下最大64G内存的支持
1
2
3
4
5
6//查看缓冲池的大小,以下134217728B表示128MB
mysql> show variables like 'innodb_buffer_pool_size'\G;
*************************** 1. row ***************************
Variable_name: innodb_buffer_pool_size
Value: 134217728
1 row in set (0.00 sec)












