哪些SQL查询使用这么多的CPU?

我有一个应用程序与很多不同的查询在各地。

我正在从mysqld获取尖峰的CPU使用率,这是最大的我的服务器,我不知道哪些查询是这样做的。

有没有办法logging/查看从UNIX级别的所有查询? 也许要看看哪些查询咀嚼所有的资源?

有一种称为“慢速查询”的查询types听起来很像:需要很长时间才能执行的查询。 在某些情况下,这些查询是合法的,但在绝大多数情况下,缓慢的查询表明一些写得不好的代码或服务器上缺less资源导致MySQL成为I / O绑定。

在任何一种情况下,如果你看到mysql尖峰,那么一个非常好的开始就是识别你的慢速查询。

我还不够,一个MySQL专家把我的头顶拉下来,但总之你想:

  • 打开慢速查询日志logging(在大多数发行版中默认closures)
  • 让它运行一下
  • 看看日志,看看哪些查询是你的罪魁祸首

我甚至不会试图从我的头顶拉下指示,但是你可以从这个链接开始:

http://www.ducea.com/2006/11/06/identifying-mysql-slow-queries/

如果这个链接过期或变得没有用处,那么search的短语就像'log mysql slow queries'一样。

一旦你有他们的日志logging,你很好的方式来整理出来。