mysql中怎样大量删除数据
发布时间:12/01 来源:未知 浏览:
关键词:
mysql中大量删除数据的办法:第一寻出相符前提的最大id;然后在where字段上创立索引;最后通过下令“delete from table_name where id < maxId limit 10000”批量删除数据即可。
举荐:《mysql视频教程》
mysql大量删除大数据
mysql一次性删除批量数据是有可能造成死锁的,并且也会抛异样
The total number of locks exceeds the lock table size in MySQL
这是因为需要删除的数据太大,mysql给的buffer宛如只要8MB摆布
lock wait timeout exceed 超时
所以需要分批处置,这也是操纵大数据时一种常见的思绪
网上比拼好的一种办法是:
第一寻出相符前提的最大id(这里的id是有序的,不需要陆续)
select max(id) from table_name where create_time < '2017-04-06'
在where字段上创立索引可提高效率
千万摆布的数据大约需要10多秒
接着按id删除,一次删除10k,轮回删除
delete from table_name where id < maxId limit 10000
以上就是mysql中怎样大量删除数据的细致内容,更多请关注 百分百源码网 其它相干文章!