2010-10-04 64 views
12

作爲我的第一條消息,我不知道我是否必須回答或發佈新消息。 我有和here一樣的問題,唯一給出的答案對我沒有幫助(除非文檔不正確)。 「您可以使OPTIMIZE TABLE在其他存儲引擎上工作」,但我的引擎是InnoDB。 我感謝你的幫助。 S.無法優化innoDB表

+0

的可能重複[優化InnoDB表(http://stackoverflow.com/questions/2816044/optimize-innodb-table) – Bobby 2010-10-04 13:11:50

+2

不要誤會我的意思,但有一切在另一個問題上明確解釋。 InnoDB不直接支持'OPTIMIZE',而是必須執行'ALTER TABLE'來重建索引。所以,是的,它的工作原理,它只是沒有告訴你。 – Bobby 2010-10-04 13:13:35

回答

28

OPTIMIZE TABLE在InnoDB表上工作正常。 「Table不支持優化,反而重新創建+分析」的消息純粹是信息性的。您可以放心地忽略該消息。

+2

是的。文檔現在明確指出它是一個預期的消息:http://dev.mysql.com/doc/refman/5.5/en/optimize-table.html – 2013-06-06 07:37:19

2

你不能忽略結果......這意味着它做一個非常密集的操作而不是一個輕的操作......一個非常大的表(> 100G),這可能是幾小時而不是幾分鐘。

-3

使用本

ALTER TABLE table ENGINE='InnoDB';