首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

MySQL 定期維護三板斧:ANALYZE、CHECK、CHECKSUM 表健康檢查指南

     編輯:MySQL 資料庫相關知識

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 比對。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved