MAMP MySQL似乎运行得非常慢

时间:2012-07-16 13:54:48

标签: mysql performance wamp mamp

自从我导入一个相当大的数据库以来,MySQL似乎运行速度非常慢,有时我的本地站点只是坐在那里加载和加载并且永远不会显示错误。在chrome的状态栏中,它只是说“发送请求...”我的所有HTML网站都立即加载,但是任何必须访问数据库的内容都不会加载。这个问题似乎是随机发生的。我可以在我的本地网站上工作大约30分钟,然后突然MySQL决定龟在我身上。我认为这是一个记忆问题,但老实说,我不知道是什么导致了它。任何人都有任何想法尝试?

2 个答案:

答案 0 :(得分:2)

首先,尝试安装一些工具来监控一般内存和CPU使用情况:

  • OS X包含一个名为 Activity Monitor 的实用程序,它是unix top命令的更直观的版本,并包含一些简单的历史记录图。如果在计算机运行缓慢时查看活动监视器,可以单击列标题进行排序(按降序“CPU%”或“Real mem”排序可能会识别出一个活跃的罪魁祸首)。

  • 还有一些更精细的监控工具,例如Menu Meters,其中包含一组有用的菜单栏附加功能。菜单栏附加功能会实时更新,因此您可以配置感兴趣的信息,并在资源不足时为您提供一些提示。

如果您有定期减速,这也可能是您的计算机正在为虚拟内存分配/删除交换文件或将活动内存交换到磁盘时。上述任何一个实用程序都应该给出一些关于已分配/使用的交换的提示以及该分配是否正在快速变化。

然后,看看一些特定于MySQL的用法:

  • 启用MySQL中的slow query log;它将帮助您找到不是最佳的查询

  • 发生减速时,请尝试使用mysql shell查看当前正在运行的查询:

     show processlist
    
  • 还可以安装一个控制台实用程序mytop utility,它可以方便地监视MySQL进程列表(它会自动刷新,如unix top)。我相信您也可以使用MySQL Workbench从更光亮的GUI进行类似的管理监控,但我最近没有使用它。

希望上面给出一些有助于追踪一般问题的想法。一旦你能找到减速发生的原因(资源少,索引丢失,查询错误......),你就可以采取适当的步骤来纠正。

O'Reilly High Performance MySQL书也是一本内容丰富的读物:)。

答案 1 :(得分:0)

可能会发生许多问题:

  1. 你有锁(在应用程序运行缓慢时,在控制台中运行“show innodb status \ G”来验证这一点。)
  2. 你可能会内存不足并且你的机器可能正在交换(如果使用top或sar进行unix验证)。
  3. 您可能需要花费很长时间才能执行索引/查询,为了验证这一点,您可以检查慢查询日志: http://dev.mysql.com/doc/refman/5.1/en/slow-query-log.html
  4. 这些只是影响性能的一些因素,但可能是最常见的一些。如果这没有帮助,您需要在问题中添加更多详细信息。