我有一个包含21M记录的MySQL数据库,我正在尝试对大约1M记录进行更新,但查询失败并显示ERROR 1206 (HY000): The total number of locks exceeds the lock table size.
是否可以在不获取锁的情况下更新表?
我无权更改innodb_buffer_pool_size
等MySQL配置参数。是否有不同的方法来实现相同的目标?
由于
修改:
答案 0 :(得分:3)
我认为你可以使用limit子句批量进行更新。
答案 1 :(得分:1)
尝试在表级而不是行级锁定。使用LOCK TABLES MyTable WRITE
。这可能会解决问题。虽然没有保证!不要忘记解锁桌子!