MySQL 5.7+ / 8.0 啟動或執行 mysqld --help --verbose 時提示:
[Warning] unique option prefix 'myisam_recover' is deprecated and will be removed in a future release. Please use the full name 'myisam_recover_options' instead.
舊配置文件使用 myisam_recover = FORCE,BACKUP 寫法已被棄用,新版本要求使用完整參數名 myisam_recover_options。
MySQL 5.6 引入 myisam_recover_options 替代舊參數 myisam_recover,5.7 開始發出棄用警告,8.0 可能完全移除。為兼容新版本,必須更新配置文件。
/etc/my.cnf 或 /etc/mysql/my.cnf),定位 [mysqld] 區段。myisam_recover = FORCE,BACKUP修改為:
myisam_recover_options = FORCE,BACKUP
systemctl restart mysqld mysqld --help --verbose 2>&1 | grep myisam_recover
| 值 | 含義 |
|---|---|
DEFAULT | 等同於不設置,不自動修復 |
BACKUP | 修復前備份 .MYD 文件為 tbl_name-datetime.BAK |
FORCE | 即使修復會丟失數據行也強制執行 |
QUICK | 無刪除塊時跳過行檢查,加速修復 |
生產推薦組合: myisam_recover_options = FORCE,BACKUP — 保證自動修復能力,同時保留損壞前數據備份供事後分析。