Mysql ibd檔案恢復

2021-09-19 16:39:48 字數 1461 閱讀 4499

mysql在使用的過程中,難免遇到資料庫表誤操作,基於此,作者親力親為,對mysql資料表ibd檔案的恢復做以下詳細的說明,對開發或者初級dba提供一定的指導作用,部落格中如若存在相關問題,請指明,相互學習,共同進步。

1、建立資料庫(隨意建立),create database yygk

2、建立資料表

備註:row_format要和ibd檔案的row_format一致,否則,會提示兩者不一致。 當前row_format=dynamic

3、表的屬性檢視

我們使用:show table status like 『t_dict』\g,檢視表的屬性,截圖如下。

備註:細心的我們發現,建立表時候的row_format和表屬性的不一致,基於innodb是,要把row_format設定成dynamic時,需要修改mysql的全域性配置,直接在myql命令中修改:set global innodb_file_format=barracuda;

4、表錯誤資訊檢視

從錯誤日誌中我們發現:row_format設定失敗了,按照第3表中的說明,在myql命令中修改:set global innodb_file_format=barracuda;然後重新建立表。

5、說明

我們在恢復表的時候,要保證row_format和ibd檔案的一致,如果ibd檔案是compact的話,需要建表的時候,設定成row_format=compact,在恢復的時候,自行解決,從第6步開始,重點說明如何去恢復。

6、恢復第一步:移除表空間

alter table t_dict discard tablespace;
7、 恢復第二步:將備份的ibd檔案,放到mysql->data->建立的資料庫名稱->,將ibd拷貝到此目錄下,如下圖所示

8、恢復第三步:重新匯入表空間

alter table t_dict import tablespace;

9、後記

當執行到上一步完成後,我們發現資料庫中的資料已經完全恢復過來了。贊。贊。贊 今後我對mysql進行下深入的學習,掌握dba的技能,應用於專案開發。完結!!!!

10、大注意

資料表的結構一定要和恢復前的資料表結構一致,否則恢復失敗,導致mysql程序重啟,詳細情況需要檢視mysql的error日誌進行分析,另外,mysql的ce工具提供了便捷的mysql引數配置修改功能

內容**

誤刪檔案恢復

1,windows系統如果 站中有被刪除的檔案,那麼直接恢復就好 2,如果 曾在eclipse或者idea等工具中編輯過,那麼工具會自動儲存本地記錄,可以從本地記錄中恢復。例如eclipse中,右鍵專案名稱,選擇 restore from local history,在彈出框中可以選擇對檔案進行恢復...

linux恢復檔案

linux恢復檔案 2.解壓tar jvxf extundelete.tar.bz2 3.編譯安裝 configure make make install 4.extundelte用法 這裡說下我要用到的引數 src extundelete help 1 restore directory path...

oracle DBF檔案恢復

以管理員是否登入oraclesqlplus as sysdba。執行shutdown immediate命令停止資料庫。將原oracle 目錄oradata orcl下的dbf檔案拷貝到當前安裝的oracle對應的dbf檔案目錄中,同時將 flash recovery area中的檔案也拷貝到當前o...