Mysql恢復 InnoDB 資料表

2021-08-02 15:41:21 字數 912 閱讀 3596

問題背景:

因資料庫中存在乙份公司應用桌面管理表,只在測試資料庫中存在,在生產環境不存在,而測試環境的資料庫.每次新版本迭代,都會同步一下正式庫,有天運維在同步時,對之前的資料庫複製備份直接進行了覆蓋,導致對應的資料表資料的不匹配

解決方法:

2.新建資料庫xwan_test(最好和需要找回的資料庫名稱一樣)

3.關閉資料庫,找到本地/伺服器上mysql安裝目錄,進入data資料夾(資料庫檔案存放目錄)

4.進入mysql安裝目錄,進入data資料夾下面,找到剛才新建的資料庫xwan_test,如下圖所示:

5.找到之前備份對應資料表的.frm和.idb檔案(每個資料表都會對應乙份.frm和.idb檔案),複製到剛才新建資料庫的目錄下.如:data/xwan_test/

6.因為innodb型別的資料表先關的資料資訊,都儲存於ibdata1檔案中,所以也要將該檔案一起複製,貼上目錄:data/檔案對應的目錄如下圖:

7:開啟資料庫,用工具重新連線,發現table下面對應的資料表出現了,開啟可以檢視相關結構和資料,大功告成(每個人的環境不一樣,可能對應的不一樣).有問題的歡迎反饋!

Innodb和Myisam資料恢復

自 這次恢復oracle和sqlserver,想想也不能把mysql落下了吧。三劍合一。都寫下了吧。主要是mysql好久不倒騰,也都忘了,找了篇差不多的 下吧。這些遷移工作說來也有意思,一年到頭倒騰不了一次,好多所謂資深開發人員都不知道怎麼弄,或者弄個半吊子水平,反正也能湊合應付工作 專門的運維人員...

mysql 原理 innodb恢復機制

舉例說明 機制 資料頁a的lsn為100,資料頁b的lsn為200,checkpoint lsn為150,系統lsn為300,表示當前系統已經更新到300,小於150的資料頁已經被刷到磁碟上,因此資料頁a的最新資料一定在磁碟上,而資料頁b則不一定,有可能還在記憶體中。lsn本身你可以理解為不同時間點...

mysql誤刪除InnoDB資料檔案恢復

錯誤重現 使用rm f ib 刪除資料檔案和重做日誌檔案。這時mysql 程序還存在,mysql 還能正常使用。檔案恢復 1 查詢 mysqld 的程序號。netstat ntpl grep mysqld tcp 0 0 0.0.0.0 3306 0.0.0.0 listen 12147 mysql...