我想知道是否可以即时更改innodb_buffer_pool_size
。
看起来缓冲池已在我的服务器上过度分配,现在正在交换。我已经在从服务器上更改了这个值,重新启动了 MySQL 守护进程,现在一切看起来都很好 - 但是我不能让主服务器脱机
我不确定是否至少可以刷新 inndb 缓冲区以释放一些内存?
# ps aux --sort -vsz | head -n2
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
mysql 2064 14.6 93.8 17369060 15328044 ? Sl Jul22 7096:48 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mysql/plugin --user=mysql --log-error=/var/log/mysql/mysql-error.log --pid-file=/var/lib/mysql/mysql.pid --socket=/var/lib/mysql/mysql.sock --port=3306
# free -m
total used free shared buffers cached
Mem: 15949 15786 163 0 4 104
-/+ buffers/cache: 15677 272
Swap: 4095 346 3749
Run Code Online (Sandbox Code Playgroud)
小智 11
在 MySQL 5.7 中,现在可以动态修改 innodb_buffer_pool 大小:
新池大小必须是以下各项的倍数:
innodb_buffer_pool_chunk_size * innodb_buffer_pool_instances
Run Code Online (Sandbox Code Playgroud)
或将使用下一个最高倍数,如果设置为无效数字。
归档时间: |
|
查看次数: |
13224 次 |
最近记录: |