mysql 一次性删除一千万条以上的数据时,可能会出现什么问题?

用的mysql做的数据库,存储需要存放的数据,之前没大量测过压力,今儿看了下有大概一千三百万条的数据,想清空下,结果执行删除数据的脚本,就一直没成功,然后现在那个删除脚本... 用的mysql做的数据库,存储需要存放的数据,之前没大量测过压力,今儿看了下有大概一千三百万条的数据,想清空下,结果执行删除数据的脚本,就一直没成功,然后现在那个删除脚本一直在执行,可数据没被清空也没法写进新的信息,看了下tomcat的日志也没报相关错误,问了下朋友说可能是执行删除操作后一次性提交这一千多万条数据造成的超时或者内存泄漏什么的问题,想问下是这个问题不,如何解决? 展开
 我来答
霜_河
推荐于2017-11-24 · TA获得超过479个赞
知道小有建树答主
回答量:277
采纳率:0%
帮助的人:211万
展开全部
是delete还没执行完,建议你用Truncate命令。
DELETE 语句每次删除一行,并在事务日志中为所删除的每行记录一项。TRUNCATE TABLE 通过释放存储表数据所用的数据页来删除数据,并且只在事务日志中记录页的释放。
建议你通过MySQL GUI Tools 5.0工具的MySQLAdministrator.exe,在“服务器连接”中找到正在执行delete的连接,会看到某个进程正在执行delete这个语句,把那个进程杀掉就可以了。
再执行Truncate table 表名,就可以了
更多追问追答
追问
可是truncate是把所有的数据都删了,我只想删除一部分,虽然是大部分···
truncate我记得是相当于把这个表给drop掉然后重新生成一个,所以不需要逐行扫描,可是我现在不是想全部删除
追答
我看你说想清空下呢。。。你可以分段提交,每删除10000条提交一次,也可以备份数据,先将你不需要删除的数据备份出来,然后删除掉表里的数据,再将备份的数据导入。
今至电子科技有限公司
2024-08-23 广告
数据库备份是确保数据安全与业务连续性的关键环节。我们上海今至电子科技有限公司高度重视数据保护,定期执行全面的数据库备份策略。这包括使用先进工具和技术,对关键业务数据进行自动化备份,并存储在安全可靠的外部存储介质或云端。通过定期验证备份的完整... 点击进入详情页
本回答由今至电子科技有限公司提供
第一个上火星
2011-06-27
知道答主
回答量:28
采纳率:0%
帮助的人:11.5万
展开全部
删除数据库
最简单的方法,或者保险点先备份数据库,再删除
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式