MySQL批量删除大量数据
假设有一个表(系统日志)有1000万条记录,包括所有的记录需要删除statusid = 1的业务不停,有近600万个,删除系统日志,statusid = 1直接执行会删除失败,因为锁等待超时超过误差。
因为这个句子所涉及的记录数量太大,所以我们用限制参数分批删除它,例如,如果每10000个被删除一次,那么我们就可以利用它。
MySQL这样的语句已经完成:
从系统日志,状态= 1阶的statusid限10000删除;
然后可以通过多次执行成功删除这些记录。
注:
当执行大量删除时,请注意使用上限,因为如果不使用限制,删除大量数据可能会导致死锁。
如果索引的删除语句不在索引上,您可以先找到主键,然后根据主键删除数据库。
在更新和删除时,最好添加限制1防止误操作。
谢谢你的阅读。我希望你能帮助你,谢谢你对这个站的支持。