2010-04-13 82 views
3

我正在运行一些针对mysql的示例测试,并发现有一堆卡在“复制到tmp表”中的查询。他们仍然处于相同的状态。他们通常是聚合查询,我可以杀死这些查询。但是,我怎么才能找出是什么导致他们被卡住?我使用mysql 5.1.42和innodb插件。查询卡在“复制到tmp表”

回答

1

最好的办法是在查询中使用说明,告诉你这条消息。

explain select count(*) from my_table left join my_other_table on id1 = id2 order by id1;

这将打破你的查询并显示哪一块导致副本到tmp表。从那里你可以调整查询,或改变你实际查询数据的方式。在某些情况下,模式更改也可以按顺序进行。