欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Mysql解决The total number of locks exceeds the lock table size错误

程序员文章站 2022-05-24 13:22:55
...

在执行插入测试数据的时候提示了这个错误

因为操作数据量过大,一次上千万条

出现这个问题就需要调整InnoDB全局的innodb_buffer_pool_size的值来解决这个问题

登陆服务器mysql

Mysql解决The total number of locks exceeds the lock table size错误

show variables like "%_buffer%";

Mysql解决The total number of locks exceeds the lock table size错误

可以看到图中红框中的size值,mysql默认的是8*1024*1024,也就是8M

这个是我已经修改过的,我修改了1024*1024*1024,也就是1G

言归正传,然后执行修改语句

#具体大小可自己定义
SET GLOBAL innodb_buffer_pool_size=1073741824;

执行完成发现并没有修改成功,反倒是提示了错误

Mysql解决The total number of locks exceeds the lock table size错误

变量“innodb_buffer_pool_size”是只读变量

那么只好寻找新的解决办法

试试在配置文件直接配置mysql的innodb_buffer_pool_size

vi /etc/my.cnf

Mysql解决The total number of locks exceeds the lock table size错误

如图,添加完成之后保存退出(请大家忽略我的中文乱码问题emm..... :))

然后重新启动mysql

Mysql解决The total number of locks exceeds the lock table size错误

重启完成之后再次登录mysql

Mysql解决The total number of locks exceeds the lock table size错误

执行查询命令,显示已经修改成功了。