本節討論如何使用 myisamchk 來檢查或修復 MyISAM
表格(具有 .MYD
和 .MYI
檔案用於儲存資料和索引的表格)。關於 myisamchk 的一般背景,請參閱 第 6.6.4 節,「myisamchk — MyISAM 表格維護工具」。其他表格修復資訊可以在 第 3.14 節,「重建或修復表格或索引」 中找到。
您可以使用 myisamchk 來檢查、修復或最佳化資料庫表格。以下章節說明如何執行這些操作,以及如何設定表格維護排程。關於使用 myisamchk 取得表格資訊,請參閱 第 6.6.4.5 節,「使用 myisamchk 取得表格資訊」。
即使使用 myisamchk 修復表格非常安全,但始終建議在進行修復或任何可能對表格進行大量變更的維護操作之前,先進行備份。
影響索引的 myisamchk 操作可能會導致 MyISAM
FULLTEXT
索引以與 MySQL 伺服器使用的值不相容的全文參數重建。若要避免此問題,請遵循 第 6.6.4.1 節,「myisamchk 一般選項」 中的準則。
MyISAM
表格維護也可以使用執行與 myisamchk 可以執行的操作類似的 SQL 陳述式來完成
若要檢查
MyISAM
表格,請使用CHECK TABLE
。若要修復
MyISAM
表格,請使用REPAIR TABLE
。若要最佳化
MyISAM
表格,請使用OPTIMIZE TABLE
。若要分析
MyISAM
表格,請使用ANALYZE TABLE
。
關於這些陳述式的其他資訊,請參閱 第 15.7.3 節,「表格維護陳述式」。
這些陳述式可以直接使用,也可以透過 mysqlcheck 用戶端程式使用。這些陳述式相較於 myisamchk 的一個優勢是,伺服器會完成所有工作。使用 myisamchk,您必須確保伺服器不會同時使用這些表格,以免 myisamchk 和伺服器之間產生不必要的互動。