MySQL需要多长时间来建立索引?

3
MySQL需要多长时间来构建一个包含30,000,000个长度为256的字符串条目的表的索引?目前看起来需要花费数小时,我不知道应该等待多久才能得出结论,即MySQL在构建索引时是否失败。

1
这将取决于它运行的机器的硬件,但我想这可能需要相当长的时间。 - NebuSoft
3个回答

2

您可以在mysql控制台中运行SHOW PROCESSLIST \G来查看其状态。我几个小时之前遇到了类似的问题,但是我的表要小得多。

这里是一份线程状态列表,您一定会需要。等待了一个小时后,我意识到ALTER TABLE CREATE INDEX处于Locked状态,我需要重新启动mysqld并再次运行该语句。那次我花了15分钟建立索引。

顺便说一下,我建议从mysql控制台运行索引创建,GUI工具可能会给过程添加一些杂音。


0

这可能需要几个小时。这完全取决于机器规格、负载等等。要查看是否失败,请检查类似 top 的内容或观察您的硬盘 - 如果它们正在疯狂运转,那么它仍在索引。


0

根据您的操作系统,您可以检查磁盘活动(即它是否读取/写入DB文件)以确定它是否失败。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接