一、问题描述
开发中对一张大表进行批量的更新或者删除的时候 会报以下错误:
The total number of locks exceeds the lock table size
从字面上理解,就是当前操作锁住的总行数已经超过设置的锁表的大小。
二、解决办法
解决方案一:分批进行更新或者删除
如给delete 语句后面加上limit ,一次 1w条
delete from user where name like '%zs%' limit 10000;
解决方案二:调整mysql的innodb_buffer_pool_size 参数
innodb_buffer_pool_size 默认大小是128m(mysql8.0

本文介绍了解决MySQL在批量更新或删除时出现'Thetotalnumberoflocksexceedsthelocktablesize'错误的方法。提供了分批处理及调整innodb_buffer_pool_size参数两种方案,并给出具体步骤。
最低0.47元/天 解锁文章
2901

被折叠的 条评论
为什么被折叠?



