MySQL-mysql 大数据表删除

小组事务管理 小组事务管理 主题:974 回复:1955

MySQL-mysql 大数据表删除

瑾兮 发布于 2017-05-17 字数 544 浏览 1236 回复 3

目前手上的一个项目,使用eclipselink作为jpa框架,碰到一个问题是其中一张主表,A, 它的主键是其它4张表的外键。
A:

现在有一个需求,就是要清空A表。我使用"delete from Record A", 因为这张表有100多万条数据,然后在删除过程中,会出现java heap size 的问题! 不知道各位有没有什么方法来删除,清空这张表?

目前 我能想到就是分段删除,比如第一次删除id 0 - 10000,第二次id 10000 - 20000...

谢谢大家,我追问一下,如果不是清空表,而是有一定条件,比如有4个类型,每个类型都有百万条记录,那么应该如何处理呢?谢谢!

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

支持 Markdown 语法,需要帮助?

评论(3

甜柠檬 2017-10-07 3 楼

1、truncate table

2、分段删除

3、如果你的表引擎是Myisam或者是innode(独立表空间类型),那么可以把这个表结构导出来备份,然后把这个表文件直接删除了,然后再根据导出来的表文件重新建一个一样的表就好了。

4、也是把表结构导出来,然后drop table,最后重新建这个表

甜柠檬 2017-08-08 2 楼

直接删除表,再新建一个

瑾兮 2017-05-18 1 楼

如果只是清空表使用

truncate table

就可以了