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...