Mysql本地服务器硬件

时间:2011-09-02 04:20:37

标签: mysql

在预期的实时场景中,我一直在Thinkpad 390x上构建我的整个站点,该处理器具有500MHz处理器和高达256MB的100MHz RAM。

我已经用200k +行的垃圾数据加载了我的数据库,试图测试我的查询。我注意到了 这显然是一个巨大的性能打击。我的所有查询都使用索引,但有些包含最多15个以上的连接(所有使用索引)。

MySQL启用了16MB的缓存,这使得查询时间几乎没有,但会产生什么后果?使用动态网站,当我允许搜索功能等独特查询时,我无法看到缓存如何帮助很多。我也在使用eaccelerator for PHP。

当我使用COUNT(*) AS total多个JOINWHERE条件时,会发生超过10秒的查询。只检索一行或两行的其他查询在与我只有几行的同一级别执行。我还注意到mysqld几乎立即在查询期间达到了99.7%的CPU压力。

基本上我不知道软件是否有故障或更多硬件。笔记本电脑是古老的,但同时它只有一个负载担心没有其他用户强调数据库。

由于

编辑 Explain statement关于一个需要约8秒的麻烦儿童: 关于表格设置的Here is more信息

1 个答案:

答案 0 :(得分:1)

如果不完全理解表结构,数据和查询,很难知道,但是您所描述的内容似乎是您正在运行的查询的合理响应时间。这是一些想法:

  • 考虑减少查询大小。只要求您当时需要的东西,而不是最终需要的东西。
  • 通常情况下,一些小问题会超出一个小问题
  • 根据数据库的大小,您可以在服务器上放置足够的ram以将整个数据库保存在RAM中,这样可以使查询更快。
  • 尝试组织您的查询,以便在列表中的第一个表格中过滤数据。看起来您的第一个表正在返回17,000条记录,这些记录需要由其余表进一步过滤。这可能是必要的,但也许表格的排列可能不同。