DB2如何快速删除大量记录

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了DB2如何快速删除大量记录相关的知识,希望对你有一定的参考价值。

表里面有个自增长字段A,而且是主键,总记录数大概是3000W条,要删除70%以上,现在删除条件只有A……删了一天~很慢很慢~之前我们想能不能将留下的数据迁移到新表中,原表整体del,可是因为有自增长字段,发现行不通
求高手赐教

如过删除之后只有很少量的数据的话,可以试一下把保留的数据copy到新的表里面,把原来的表drop掉,然后再把新表rename。

另外,你如果不怕操作错误的话,可以把日志关掉,这样删除的速度回比较快。

还有,如果表上的index比较多,而你又打开了auto_reorg那也会很慢的。

另外,不知道你是怎么删除的,一次删除多少数据; 这有知道这些详细情况才能知道为什么这么慢。
参考技术A create new_table like old_table
把30%插入到备份表new_table中,然后truncate [table] immediate,再将备份表数据还原回来。
参考技术B 说明白一点,你到底是要快速删除还是要迁移?追问

删除啊~所迁移到新表是我们之前尝试的方法

追答

没有快速删除部分数据的方法,只有快速删除全部的方法。
带有自增字段的迁移是可以的,通过使用identityignore选项。

本回答被提问者采纳

以上是关于DB2如何快速删除大量记录的主要内容,如果未能解决你的问题,请参考以下文章

如何删除大量数据 sql server2005 数据量在8千万左右??

如何快速删除大批量数据

如何快速删除 WordPress 外贸网站后台的垃圾评论

Linux 快速删除大量小文件方法

nodejs 如何快速的遍历大量的文件夹

Linux下快速删除大量文件