MySQL 8.4 發行說明
要合併分散的資料列並消除因刪除或更新資料列而產生的浪費空間,請在修復模式下執行 myisamchk
$> myisamchk -r tbl_name
您可以使用 OPTIMIZE TABLE
SQL 陳述式以相同的方式最佳化表格。OPTIMIZE TABLE
會執行表格修復和索引鍵分析,並對索引樹排序,以便更快地進行索引鍵查閱。由於在使用 OPTIMIZE TABLE
時,伺服器會完成所有工作,因此公用程式和伺服器之間也不會有不想要的互動。請參閱 第 15.7.3.4 節,「OPTIMIZE TABLE 陳述式」。
myisamchk 還有許多其他選項,可用於改善表格效能
--analyze
或-a
:執行索引鍵分佈分析。這可以讓聯結最佳化工具更好地選擇聯結表格的順序以及應使用的索引,從而改善聯結效能。--sort-index
或-S
:對索引區塊排序。這可以最佳化搜尋,並加快使用索引的表格掃描速度。--sort-records=
或index_num
-R
:根據給定的索引對資料列排序。這可以使您的資料更本地化,並加快使用此索引的範圍型index_num
SELECT
和ORDER BY
操作。
如需所有可用選項的完整描述,請參閱 第 6.6.4 節,「myisamchk — MyISAM 表格維護公用程式」。