gpt4 book ai didi

mysql - 优化基于 mysql uuid 的 200 万行 SQL 迁移的技巧

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

我想向现有表(innodb 和 mysql)添加新列。该列应包含 UUID()。该表当前有 200 万行。

在我的本地 i7 上添加列需要 24 秒,而 UPDATE tbl SET uuid = UUID(); 大约需要 3:30 分钟。好多啊。如果我将其封装在事务中,我会得到一半的时间,但仍然很多。

我真的不想在生产中执行这么长的查询。

我可以选择哪些选项来为现有的 200 万行添加 UUID,从而花费更少的时间?

谢谢!

最佳答案

我不确定使用在不到 2 分钟内返回复杂随机 ID 的函数更新 200 万行是否很慢。

如果您担心给定的表在此期间无法使用,那么为什么不创建第二个表,在其中添加额外的列,填充原始表中的其他字段以及填充 uuid 列向上?新表填满后,删除原始表并重命名新表。

关于mysql - 优化基于 mysql uuid 的 200 万行 SQL 迁移的技巧,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32915013/

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