MySQL在大表上的UPDATE查询

前端之家收集整理的这篇文章主要介绍了MySQL在大表上的UPDATE查询前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我有一个包含21M记录的MySQL数据库,我正在尝试对大约1M记录进行更新,但是查询失败了ERROR 1206(HY000):锁的总数超过了锁表大小.

是否可以在不获取锁的情况下更新表?

我没有权限更改像innodb_buffer_pool_size这样的MysqL配置参数.是否有不同的方法来实现相同的目标?

谢谢

编辑:

>我已经尝试了5000批次,它可以工作几次,但我得到了同样的错误
>我已经尝试过LOCK TABLES锁定整个表格,但它仍无效.

最佳答案
我认为你可以使用limit子句批量进行更新.

猜你在找的MySQL相关文章