ANALYZE TABLE:更新索引統計資訊
ANALYZE [LOCAL | NO_WRITE_TO_BINLOG] TABLE tbl_name [, tbl_name] ...
- 分析並儲存鍵值分布,優化器依此生成執行計畫。
- 執行期間加讀取鎖。
- 適用 MyISAM、BDB、InnoDB;MyISAM 等同
myisamchk -a。
CHECK TABLE:檢測錯誤與更新統計
CHECK TABLE tbl_name [, tbl_name] ... [option] ...
option = {QUICK | FAST | MEDIUM | EXTENDED | CHANGED}
- 檢查一或多個表是否有錯誤。
- 適用 MyISAM、InnoDB;MyISAM 同時更新鍵值統計。
- 可檢查 View 定義引用的表是否存在。
CHECKSUM TABLE:校驗資料一致性
CHECKSUM TABLE tbl_name [, tbl_name] ... [QUICK | EXTENDED]
- 報告表檢查和,可用於主從一致性驗證、備份完整性比對。
建議排程
- 線上高峰期避開,建議每日/每週低峰期執行
ANALYZE。
- 懷疑資料損壞或異常關機後,立即執行
CHECK TABLE ... EXTENDED。
- 主從切換前後、備份完成後執行
CHECKSUM 比對。