i无法在https://console.cloud.google.com中从edit
设置innodb_buffer_pool_size
。它只是没有此参数。
我也无法用SQL设置innodb_buffer_pool_size
:
mysql> SET GLOBAL innodb_buffer_pool_size=2147483648;
ERROR 1227 (42000): Access denied; you need (at least one of) the SUPER privilege(s) for this operation
目前不可能 - 我们始终将innodb_buffer_pool_size
设置为Machine Ram的75%。
在您的情况下,您似乎需要更多的每连接缓冲区,而在innodb_buffer_pool_size
中需要更少的内存。我们有关于如何自动检测此类条件并减少innodb_buffer_pool_size
的想法
现在对您的实际解决方法是增加实例大小:使用更多内存,您将对每交易缓冲区有更多的懈怠。另一个可能不太实际的解决方法是通过较少的并发查询(尝试使用有限的连接数量)或简化它们(较少的加入等)来减少数据库的负载。
如果您使用的是kubernetes来部署实例,请在paas.config.yaml中设置参数CustomDatabaseFlags:
- 名称:" innodb_buffer_pool_size;价值:2147483648