Total Pageviews

Monday, 24 December 2012

mysql下,優化表和修復表的命令

隨著mysql的長期使用,肯定會出現一些問題,一般情況下mysql表無法訪問,就可以修復表了,優化時減少磁盤占用空間。方便備份。

代碼如下:
REPAIR TABLE `table_name` 修復表
OPTIMIZE TABLE `table_name` 優化表


REPAIR TABLE 用於修復被破壞的表。
OPTIMIZE TABLE 用於回收閑置的數據庫空間,當表上的數據行被刪除時,所占據的磁盤空間並沒有立即被回收,使用了OPTIMIZE TABLE命令後這些空間將被回收,並且對磁盤上的數據行進行重排(註意:是磁盤上,而非數據庫)。

多數時間並不需要運行OPTIMIZE TABLE,只需在批量刪除數據行之後,或定期(每周一次或每月一次)進行一次數據表優化操作即可,只對那些特定的表運行。