MySQL錯誤日志出現 [Note] InnoDB: Discarding tablespace of table db.table: Data structure corruption產生可能的原因及解決辦法? 一、產生原因 從錯誤日志即可判斷出表空間ibd文件發生了物理損壞,那么其中的可能包括如下: 1、數據庫服務器異常down機/斷電等。 2、kill -9強制關閉mysqld 3、表空間導出導入過程中發生的ibd文件損壞。 4、人為損壞ibd文件。 5、底層物理I/O設備損壞,導致文件損壞。 二、解決辦法 1、從其他實例(如slave)上進行表空間傳輸進行導入或進行SQL導出導入。 2、從歷史備份中進行全量+增量恢復完整的ibd文件后再進行表空間傳輸或進行SQL導出導入。 3、嘗試innodb_force_recovery從1-6逐一嘗試啟動數據庫,啟動后通過mysqldump重新將表導出導入。 4、考慮使用工具undrop-for-innodb從index page嘗試數據恢復。