日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

根据ibd文件进行数据恢复或导入

發布時間:2023/12/13 综合教程 41 生活家
生活随笔 收集整理的這篇文章主要介紹了 根据ibd文件进行数据恢复或导入 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、背景

1.1、需求來源

需要給客戶將生產環境的數據恢復到測試環境,但是線上環境的xtrabackup全備數據量太大,拷貝下來比較麻煩,并且需要恢復的數據只有整庫中的兩張表的數據,所以客戶只是將全備中的對應表的ibd文件以及frm文件拷貝下來了,要求根據ibd文件以及frm文件進行數據恢復。

1.2、環境介紹

數據庫版本:MySQL-5.7.22

數據庫要求:innodb_file_per_table=1

二、解決方案步驟

2.1、準備工作

準備好需要進行數據恢復的表ibd文件以及frm文件

安裝一個新的MySQL實例

innodb_file_per_table
安裝步驟省略

2.2、表結構恢復

在數據庫中創建一張表名與被恢復表表名一致的表,表結構不限制

將新建表的ibd文件以及frm文件拷貝到tmp目錄下備份

#cpmessage_index.*/tmp/

使用被恢復的frm文件替換新創建的同名表的frm文件

#cp/data2/message_index.frm./
cp:是否覆蓋"./message_index.frm"?y
#chown-Rmysql:mysql./*

在數據庫中執行show create table語句
注意需要在show create table查看表結構之前執行flush tables語句,因為如果message_index表之前被打開過,那么表結構會被緩存在內存中,show create table不會報錯,也就無法從錯誤日志中拿到我們需要的信息。

查看error.log,獲取被恢復表的字段數
錯誤日志中會打印我們需要恢復的表的字段數,這邊可以看到我們需要恢復的表中含有6個字段

刪除message_index表,并重新創建message_index表
從上面的步驟中我們知道被恢復表中含有6個字段,所以重新創建的message_index表需要含有6個字段,字段名以及字段類型不限制

再次使用被恢復的frm文件替換新創建的同名表的frm文件

#cp/data2/message_index.frm./
cp:是否覆蓋"./message_index.frm"?y
#chown-Rmysql:mysql./*

在MySQL配置文件中添加innodb_force_recovery=6,并重啟數據庫

通過show create table語句拿到message_index表的表結構

至此,我們就拿到了我們需要進行恢復的表的表結構。

2.3、表數據恢復

拿到表結構之后,表數據恢復步驟相對表結構恢復步驟而言會簡單一些

將innodb_force_recovery=6從配置文件中去掉、使用/tmp目錄下的ibd文件以及frm文件覆蓋當前的對應文件、重啟數據庫

在數據庫中按照獲取到的表結構新建一張message_index表

執行alter table discard tablespace語句

mysql>altertablemessage_indexdiscardtablespace;

將要恢復的表的ibd文件拷貝到當前庫下,并更改屬主以及屬組

#chown-Rmysql:mysql./*

執行alter table import tablespace語句

mysql>altertablemessage_indeximporttablespace;

可以看到數據已經都恢復回來了。

三、總結

以上我們通過xtrabackup全備中的ibd文件以及frm文件恢復了數據,這樣也就代表著xtrabackup就算備份失敗,只要有部分ibd文件以及frm文件保證完好,MySQL也是可以進行數據恢復的,在極端情況下也能盡可能地減少損失。但是由于xtrabackup是通過記錄redo日志的方式來保存備份過程中產生的增量數據,這一部分增量數據目前還沒有辦法恢復。

導入表空間的方式,也給MySQL大數據量遷移方案提供了一種思路:直接拷貝ibd文件的方式。

螃蟹在剝我的殼,筆記本在寫我,漫天的我落在楓葉上雪花上,而你在想我。
--章懷柔

總結

以上是生活随笔為你收集整理的根据ibd文件进行数据恢复或导入的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。