gpt4 book ai didi

mysql - 在完成之前停止 MySQL 删除查询

转载 作者:行者123 更新时间:2023-11-29 04:45:07 25 4
gpt4 key购买 nike

我试图从我的 MySQL 表中删除一些行,该表有 2 亿行。虽然一开始它运行良好,但几个小时后速度会急剧下降。我希望我现在可以停止查询并重新启动它,从而让它更快地发生。之后我的数据库会保持完整吗?

最佳答案

您可以通过终止启动它的 session 来终止当前的删除操作。为此,您可以使用已经提到的从其他 session 发出的 KILL 语句,或者如果您的删除是从某些客户端代码(例如 php)发出的,则终止客户端进程。

完整 不是很清楚您的意思。如果您指的是 table 的完整性,那么是的,它应该完好无损。如果你的意思是它会被回滚,那么它取决于发布删除的上下文。

要批量删除分离后的剩余行,假设您从一个表中DELETE(意味着您没有使用多表语法),您可以尝试使用LIMIT子句。

DELETE 
FROM table_name
WHERE ...
LIMIT 10000 -- or any other appropriate batch size

这样您就可以一次删除 n (10000) 行。

关于mysql - 在完成之前停止 MySQL 删除查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20307882/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com