MySQL管理之道-笔记-MySQL5.7-在线调整innodb_buffer_pool_size不用重启mysql进程

在线调整innodb_buffer_pool_size不用重启mysql进程
MySQL5.7之前,调整innodb_buffer_pool_size须要重启mysql进程才能够生效。
建议业务低峰时间执行mysql

1 当前大小128Msql

root@localhost:mysql3306.sock [(none)]>show variables like '%innodb_buffer_pool_size%'; +-------------------------+-----------+
| Variable_name           | Value     |
+-------------------------+-----------+
| innodb_buffer_pool_size | 134217728 |
+-------------------------+-----------+
1 row in set (0.03 sec) root@localhost:mysql3306.sock [(none)]>select 134217728/1024/1024; +---------------------+
| 134217728/1024/1024 |
+---------------------+
|        128.00000000 |
+---------------------+
1 row in set (0.00 sec)

2 动态调整为256Mspa

root@localhost:mysql3306.sock [(none)]>set global innodb_buffer_pool_size = 256*1024*1024; Query OK, 0 rows affected (0.18 sec) root@localhost:mysql3306.sock [(none)]>show variables like '%innodb_buffer_pool_size%'; +-------------------------+-----------+
| Variable_name           | Value     |
+-------------------------+-----------+
| innodb_buffer_pool_size | 268435456 |
+-------------------------+-----------+
1 row in set (0.02 sec) root@localhost:mysql3306.sock [(none)]>select 268435456/1024/1024; +---------------------+
| 268435456/1024/1024 |
+---------------------+
|        256.00000000 |
+---------------------+
1 row in set (0.00 sec) root@localhost:mysql3306.sock [(none)]>select version(); +------------+
| version()  |
+------------+
| 5.7.18-log |
+------------+
1 row in set (0.03 sec)

调整时,内部会把数据页移动到一个新的位置,单位是块。若是想提高移动速度,则须要调整
innodb_buffer_pool_chunk_size的参数大小,默认是128Mcode

innodb_buffer_pool_size/innodb_buffer_pool_instances = innodb_buffer_pool_chunk_size的参数大小,默认是128Mblog

相关文章
相关标签/搜索