gpt4 book ai didi

mysql - UPDATE 语句导致进程自动终止

转载 作者:行者123 更新时间:2023-11-29 23:16:22 25 4
gpt4 key购买 nike

我想通过将三个字段与 table_2 匹配来将 ID 值添加到 table_1:

update table_1 t1
join table_2 t2 on t1.col_1 = t2.col_1
and t1.col_2 = t2.col_2
and t1.col_3 = t2.col_3
set t1.ID = t2.ID;

Table_1 约有 300 万行,table_2 约有 300,000 行。这三个字段在table_1中都有索引,并且table_2中的相同字段有唯一索引。当我运行此脚本时,进程将在大约 1,200 秒后自动终止,并且 SHOW PROCESSLIST 中的 State 和 Info 字段显示 NULL。

知道发生了什么吗?

最佳答案

检查运行时您有多少内存。连接的大小可能太大,您的操作系统无法承受。还可以运行 SHOW PROCESSLIST 来查看等待的位置。

作为解决方法,您可以编写一个脚本来循环 300,000 行

foreach t2 rows as row
UPDATE t1
SET t1.id = t2.id
WHERE ...

不会花太长时间。

关于mysql - UPDATE 语句导致进程自动终止,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27759427/

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