2011-11-16 154 views
0

我有一些问题与某个网站(基本上MySQL是杀死proccessor)MySQL查询占用的CPU

我发现使用top中COMAND线给我看,这是MySQL的节流proccessors。

所以我运行了mysqladmin processlist命令。

这表明

ID ----- 用户 ----- 主机 ----- DB ----- 命令 ----- 时间 ----- 国家 -------- 信息

47 ----- XXX ------ XXX ------- XXX-- --query ----------- 2400-- ---统计---- SELECT DISTINCT .....

我相信这是告诉我,上述查询是太长,卡住或不会完成。

我的开发人员问我,如果有一种方法来确定像什么产生这一等等等等

回答

0

您贴上了输出显示,上市已经为2400秒运行,这是否过长或比平常更长的查询是不可能的任何人,但你说。

如果你运行一个SHOW FULL PROCESSLIST而不是SHOW PROCESSLIST,MySQL会告诉你正在运行的完整查询,而不仅仅是前几个单词。

一旦你看到你正在运行的确切的查询,你/你的开发人员应该能够使用数据库在网站的源中找到它。

+0

,让我更好地看看什么是运行谢谢你。是的,那太久了,没有什么东西需要花费那么长时间才能再次在网站/服务器上处理 – odd

0

那么你可以使用EXPLAIN上查询任何信息。它按照MySQL在处理语句时读取它们的顺序列出输出中的表。

希望,可能会有所帮助

+0

怎么会这样我发现mysql> SHOW FULL PROCESSLIST \ G很容易impliment无法找到任何关于EXPLAIN对不起 – odd