MySQL发送数据性能

时间:2011-11-11 11:21:24

标签: mysql

我有一个查询,需要600毫秒才能在Dev机器上运行,但在Prod机器上需要62秒才能执行。但是当我再次在prod机器上执行此查询时需要700ms。所以有一个奇怪的事情这让查询有时需要时间。发送数据或IO问题或加载问题。我正在使用Mysql和UNIX Opensuse.i需要一个工具来捕获这个问题,或者如果有人知道如何捕获它或它发生在他之前.10x

1 个答案:

答案 0 :(得分:2)

缓存可以解释为什么第一次运行查询需要62秒,然后第二次运行700毫秒。

如果你想在查询运行时查看mysql正在做什么,请尝试运行FLUSH QUERY CACHE或FLUSH TABLES来清除缓存,然后运行查询,并在单独的会话中运行“show processlist”几次您的查询正在运行。 “状态”将显示MySQL正在做什么。

您还可以使用“EXPLAIN”来分析您的查询。快速谷歌搜索“mysql解释”将导致许多网站解释“EXPLAIN”的作用以及如何使用它来优化您的查询或索引。如果您在此之后仍然遇到问题,请在此处发布相关的表定义,包括索引定义,查询以及EXPLAIN的输出。

关于开发和生产之间的性能差异......您的两个环境有什么不同吗?也许不同的mysql配置或系统配置?