我在我的虚拟机上执行一些繁重的MySQL操作,并不断得到以下错误:
SQLSTATE [HY000]:一般错误:1206锁的总数超过锁表大小
我innodb_buffer_pool_size ,增加my.cnf innodb_buffer_pool_size选项可能会解决这个问题。 我在VM上发现的唯一my.conf位于/etc/mysql/my.cnf 。 那里没有innodb_buffer_pool_size设置,所以我补充说:
innodb_buffer_pool_size = 1G
然后增加到2G,但仍然存在错误。 在每次更改my.cnf文件之后,我完全重启了我的虚拟机。
问题是如果有机会检查innodb_buffer_pool_size参数是否被考虑,我正在修改正确的文件?
我my.cnf有root:root用户,但权限是-rw-r--r--所以我猜MySQL应该可以读取它。
所有你需要做的是执行一个这样的查询:
show variables like 'innodb_buffer_pool_size'
这会给你这个variables的现值。 (所有configuration设置最终为系统variables)。
检查这一点: 显示variables语法 。