MySQL錯誤日志出現 [Note] InnoDB: Discarding tablespace of table db.table: Data structure corruption產生可能的原因及解決辦法?


MySQL錯誤日志出現 [Note] InnoDB: Discarding tablespace of table db.table: Data structure corruption產生可能的原因及解決辦法?


一、產生原因
從錯誤日志即可判斷出表空間ibd文件發生了物理損壞,那么其中的可能包括如下:
    1、數據庫服務器異常down機/斷電等。
    2kill -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嘗試數據恢復。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM