缓冲池
-
在 InnoDB 存储引擎中有一部分数据会放到内存中,缓冲池则占了这部分内存的大部分,它用来存储各种数据的缓存
-
从缓冲池中读取数据
缓冲池管理器会尽量将经常使用的数据保存起来,在数据库进行页面读操作的时候,首先会判断该页面是否在缓冲池中,
如果存在就直接读取,如果不存在,就会通过内存或磁盘将页面存放到缓冲池中再进行读取
- 查看缓冲池大小
MariaDB [(none)]> show variables like 'innodb_buffer_pool_size';
+-------------------------+-----------+
| Variable_name | Value |
+-------------------------+-----------+
| innodb_buffer_pool_size | 268435456 |
+-------------------------+-----------+
1 row in set (0.001 sec)
# 此时 InnoDB 的缓冲池大小只有 268435456/1024/1024=256MB。
- 设置缓冲池大小为128m
set global innodb_buffer_pool_size = 134217728;
- 设置缓冲池大小方式2
# 修改配置文件
[server]
innodb_buffer_pool_size = 268435456
- 配置文件中设置缓冲池个数
[server]
innodb_buffer_pool_instances = 2
- 查看缓冲池个数
show variables like 'innodb_buffer_pool_instances';