Incorrect key file for table: '...'. Try to repair itTable '...' is marked as crashed and should be repairedCan't open file: '×××.MYI' (errno: 145)CHECK TABLE / mysqlcheck / myisamchkOPTIMIZE TABLE 整理碎片systemctl stop mysqld,禁用 kill -9CHECK TABLE tbl_name; REPAIR TABLE tbl_name; CHECK TABLE tbl_name; -- 驗證
mysqlcheck -A -r -u root -p # 所有庫修復 mysqlcheck --all-databases -r -u root -p
# 必須先停庫 mysqladmin -u root -p shutdown # 檢查 myisamchk /path/to/tbl_name.MYI # 修復 (-o 安全修復, -f 強制) myisamchk -of /path/to/tbl_name.MYI # 開機自檢腳本 (rc.local) [ -x /var/lib/mysql/mysql.sock ] && myisamchk -of /var/lib/mysql/*/*.MYI
離線修復務必確認 mysqld 已完全停止,否則可能造成二次損壞。
SELECT TABLE_SCHEMA, TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE ENGINE IS NULL;
或查看事件日誌、phpMyAdmin「使用中」標記。