我发现 EC2 (Ubuntu 12.10) 上的 MySQL 可能非常慢。 在我的本地 PC(Windows 7)上执行一组特定的 SQL 查询只需 700 毫秒,而在 EC2 上则需要超过 13 秒。
数据库很小,只有12MB。查询过程中几乎没有磁盘IO。 尽管如此,EC2 实例却慢了 20 倍。 所有数据库都基于相同的转储:相同的表和相同的索引。查询返回相同的结果。 唯一的区别是执行时间。
我尝试了 M1.small 和 M2.xlarge(其计算能力是 M1.small 的 7 倍) - 结果是相同的:查询在两台服务器上花费的时间几乎相同,而且都非常慢。
为什么会发生这种情况?
最佳答案
问题出在 MySQL 5.5 上,它执行子查询的效率很低。 我的家用电脑运行 MySQL 5.6,在这方面要好得多。 因此,我将 EC2 上的 MySQL 升级到了 5.6 版本,它的速度几乎与我的家用 PC 一样快(就只有一个同时查询而言)。
关于MySQL 在 EC2 上非常慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17255238/