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

桌子的开销有多大?

  •  4
  • DisgruntledGoat  · 技术社区  · 15 年前

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

    多少钱太多了?我应该跑吗 OPTIMIZE TABLE 定期?

    2 回复  |  直到 8 年前
        1
  •  6
  •   ChssPly76    15 年前

    “开销”还不是以前被现在已删除的记录占用的回收空间。如果你做了大量的插入/删除,它几乎总是会出现在那里。你可以跑 OPTIMIZE TABLE 但我不会费心——尤其是在大桌子上(14米不算大),在那里可能要花很多时间。

        2
  •  3
  •   fmalina    10 年前

    要整理数据表,只需使用:

    ALTER TABLE table_name_here ORDER BY primary_key_here;
    

    它能跑得比 OPTIMIZE TABLE .

    这将取消数据文件的碎片化。在对表进行大量更改之后,这也可能会提高使用表的语句的性能,有时会显著提高。

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