myisamchk 支援以下用於表格檢查操作的選項
--check
,-c
命令列格式 --check
檢查表格是否有錯誤。如果您未明確指定任何選擇操作類型的選項,這是預設操作。
-
命令列格式 --check-only-changed
僅檢查自上次檢查以來已變更的表格。
--extend-check
,-e
命令列格式 --extend-check
非常徹底地檢查表格。如果表格有很多索引,這會相當慢。此選項僅應在極端情況下使用。通常,myisamchk 或 myisamchk --medium-check 應該能夠確定表格中是否存在任何錯誤。
如果您使用
--extend-check
且有足夠的記憶體,將key_buffer_size
變數設定為較大的值有助於加快修復操作的速度。另請參閱表格修復選項下此選項的說明。
有關輸出格式的說明,請參閱 第 6.6.4.5 節,「使用 myisamchk 取得表格資訊」。
--fast
,-F
命令列格式 --fast
僅檢查未正確關閉的表格。
--force
,-f
命令列格式 --force
如果 myisamchk 在表格中發現任何錯誤,則自動執行修復操作。修復類型與使用
--recover
或-r
選項指定的類型相同。--information
,-i
命令列格式 --information
列印有關所檢查表格的資訊統計資料。
--medium-check
,-m
命令列格式 --medium-check
執行比
--extend-check
操作更快的檢查。這僅會找到 99.99% 的所有錯誤,在大多數情況下應該足夠好。--read-only
,-T
命令列格式 --read-only
不要將表格標記為已檢查。如果您使用 myisamchk 檢查正在被其他不使用鎖定的應用程式(例如,在禁用外部鎖定的情況下執行的 mysqld)使用的表格,這會很有用。
--update-state
,-U
命令列格式 --update-state
將資訊儲存在
.MYI
檔案中,以指示表格檢查的時間以及表格是否崩潰。這應該用於充分利用--check-only-changed
選項,但如果 mysqld 伺服器正在使用表格且您正在禁用外部鎖定的情況下執行它,則不應使用此選項。