如何设置全局innodb_buffer_pool_sizemySQL变量?当我将其设置为时,system display我收到此错误:
ERROR 1238 (HY000): Variable 'innodb_buffer_pool_size' is a read only variable
Run Code Online (Sandbox Code Playgroud)
100*_*111 20
在早期版本的MySQL(<5.7.5)中设置的唯一方法
'innodb_buffer_pool_size'
变量是通过将它写入[mysqld]部分下的my.cnf(对于linux)和my.ini(对于windows):
[mysqld]
innodb_buffer_pool_size = 2147483648
Run Code Online (Sandbox Code Playgroud)
您需要重新启动mysql服务器才能使其生效.
从MySQL 5.7.5开始,可以使用SET语句动态设置innodb_buffer_pool_size配置选项,允许您在不重新启动服务器的情况下调整缓冲池的大小.例如:
Run Code Online (Sandbox Code Playgroud)mysql> SET GLOBAL innodb_buffer_pool_size=402653184;
参考:http://dev.mysql.com/doc/refman/5.7/en/innodb-buffer-pool-online-resize.html
innodb_buffer_pool_size
您应该在[mysqld]部分下将此变量值设置为:
innodb_buffer_pool_size=2G
Run Code Online (Sandbox Code Playgroud)
并重启MySQL服务才能生效.
InnoDB缓冲池缓存数据和索引页面.您可以将此值设置为仅Innodb安装的可用内存的70-80%
| 归档时间: |
|
| 查看次数: |
48213 次 |
| 最近记录: |