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

mysqlcheck 一鍵檢查、優化與修復所有 MySQL 資料庫

     編輯:MySQL 資料庫相關知識

工具簡介

mysqlcheck 是 MySQL 官方提供的資料表維護工具,支援 MyISAM、InnoDB 等引擎,可一次對所有資料庫執行檢查、修復、優化、分析。

常用指令

指令說明
mysqlcheck -A -o -r -p檢查(-c預設)、優化(-o)、修復(-r) 所有資料庫 (-A),需輸入密碼 (-p)
mysqlcheck -A -o -r db_name -p僅處理指定資料庫
mysqlcheck -A -a -p分析所有資料庫 (-a),更新索引統計資訊
mysqlcheck -A -c -p僅檢查錯誤,不修復

實際輸出範例

# mysqlcheck -A -o -r -p
Enter password:
guestbook.simpgb_avatars       OK
guestbook.simpgb_bad_Words     OK
guestbook.simpgb_banlist       OK
guestbook.simpgb_data          OK
...

自動化建議

  • 寫入 crontab 定期執行(如每週日凌晨低峰期)。
  • 搭配 --auto-repair 讓工具自動修復發現的損壞表。
  • InnoDB 引擎表通常不需手動修復,依賴崩潰恢復機制;mysqlcheck 對 InnoDB 主要執行 ANALYZE 與 OPTIMIZE(重建表)。

補充:myisamchk / isamchk 離線深度修復

若 mysqlcheck 無法修復嚴重損壞的 MyISAM 表,需停止 MySQL 服務,使用 myisamchk -r 離線修復,並配合鎖定協議防止資料不一致。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved