代码之家  ›  专栏  ›  技术社区  ›  ondrobaco

mysql的困境。使用条件限制dbf上的负载

  •  0
  • ondrobaco  · 技术社区  · 16 年前

    我有一张大约有80万张记录的表格。它基本上是一个我经常查询的日志。 我给出了只查询上个月输入的查询的条件,以减少数据库的负载。

    我的想法是 a) 如果数据库只运行第一个月,然后返回条目,那么它是好的。 b) 如果数据库遍历整个数据库+针对每个记录检查条件,实际上比没有条件更糟糕。

    你的意见是什么? 如何减少dbf上的负载?

    2 回复  |  直到 16 年前
        1
  •  0
  •   kbenson    16 年前

    如果包含输入日期的字段是键控/索引的,并且被DB软件用来优化查询,那么应该将检查的行集减少到与该日期范围相匹配的行。

    也就是说,人们普遍认为,最好按顺序优化查询、索引、数据库服务器设置和硬件。根据数据集的不同,更改查询数据的方式可以将查询的影响降低数百万倍,而查询的格式最初就很糟糕。

    如果查询本身的构造没有明显的加速方面(正确地完成连接或者不需要连接,或者有效地使用索引),那么添加索引来帮助您的常见查询将是下一个很好的步骤。

        2
  •  0
  •   David Gelhar    16 年前

    MySQL EXPLAIN command 找出答案。例如,它将告诉您它是否能够为查询使用索引。