2009-10-14

MySQL 縮小 MyISAM table 檔案大小

當刪除大量的資料時, MyISAM 的檔案(MYD, MYI)並不會自動變小。

這時, 可以手動下一些指令:
optimalze table tablename

repair table tablename

不過, 如果資料量很大的話, 需要不少的時間。


原先資料筆數有 4千多萬筆, table 檔案大小共有 6.24 G。
刪除了 2千多萬筆後, table 檔案並不見縮小。

下了 repaire table 之後, 嗯..., 此時 MYI 不斷地由 0 開始長大。
很久之後, 成功了。
檔案大小共 2.67 G。

這時, 如果再下 optimize table, 會另外產生 TMM 檔案, 直到大小與 MYI 一致, 突然將 MYI 交換, TMM 檔就不見了。
這次速度就很快了, 大小仍同。

MYI 應該是 index file 吧。

0 意見:

張貼留言