什么可能导致MySQL数据库非常慢?

时间:2013-04-26 17:19:07

标签: mysql performance innodb

我试图弄清楚为什么MySQL数据库在实时服务器上异常缓慢。从表中删除一行(只有少于100行)可能需要1秒到20秒之间的任何时间。我已经检查了正在运行的进程,看不到任何会占用所有CPU或内存的东西。

此外,该网站尚未推出,所以只有我就可以了。

在这些情况下,数据库如此缓慢的原因可能是什么?有没有办法诊断出这类问题?

1 个答案:

答案 0 :(得分:2)

  

在这些情况下,数据库如此缓慢的原因可能是什么?有没有办法诊断出这类问题?

你确定数据库速度慢吗?

使用命令行连接到您的服务器,启动mysql,然后从那里运行一些示例查询。如果它在那里足够快(它应该,除非你像疯了一样交换或者有很多时髦的触发器),你可以安全地消除SQL作为罪魁祸首。如果没有,您的架构,数据库配置(它是否有足够的内存?)或您的服务器(RAM是否损坏?)可能存在问题。

缓慢的另一个原因可能是延迟。例子:

  • 进行DNS查询所需的时间(例如,有时连接到127.0.0.1比连接到localhost更快)

  • 由于数据库位于单独的服务器上而导致滞后(特别是如果数据库位于世界的另一端)

  • 如果涉及blob,则需要从数据库中检索结果所需的时间。

  • 非常慢的NSF:

    http://lists.freebsd.org/pipermail/freebsd-fs/2013-April/017125.html