【问题标题】:How much table overhead is too much?多少表开销太多了?
【发布时间】:2010-11-20 06:55:30
【问题描述】:

我刚刚在 phpMyAdmin 中看到我们的一个 MySQL 表大小为 14MB,但开销为 10MB。我猜这是很多!

多少算太多?我应该定期运行OPTIMIZE TABLE 吗?

【问题讨论】:

    标签: mysql overhead


    【解决方案1】:

    “开销”尚未回收以前被现在删除的记录占用的空间。如果您正在执行大量插入/删除操作,它几乎总是会存在。您可以运行 OPTIMIZE TABLE,但我不会打扰 - 尤其是在可能需要很多时间的大桌子上(虽然 14M 并不大)。

    【讨论】:

      【解决方案2】:

      整理数据表可以使用:

      ALTER TABLE table_name_here ORDER BY primary_key_here;
      

      它可以比OPTIMIZE TABLE 运行得更快。

      这将对数据文件进行碎片整理。在对表进行大量更改后,这也可能会提高使用该表的语句的性能,有时会显着提高。

      http://dev.mysql.com/doc/refman/5.1/en/optimize-table.html

      【讨论】:

      • 你是怎么知道这件事的?
      • 不记得了,我想我试图解决与提出问题的 quy 相同的问题。请自行检查,但我很确定它有效。
      猜你喜欢
      • 1970-01-01
      • 2011-05-26
      • 2010-12-01
      • 2011-02-09
      • 2011-07-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多