【阿里云】RDS MySQL備份文件恢復實戰
瀏覽量: 次 發布日期:2023-08-17 21:48:43
【阿里云】RDS MySQL備份文件恢復實戰
前言
在某起案件中,辦案人員獲取了RDS云數據庫備份文件,需要我們在本地重構數據庫并進行分析。本文將詳細介紹使用開源軟件Percona Xtraxtrabackup將云數據庫Mysql的備份文件恢復到自建數據庫中的操作步驟。
1、環境準備
系統推薦使用Linux CentOS,環境安裝較方便。
本文操作環境選擇:
Centos版本:CentOS7
數據庫版本:MySQL 8.0
xtrabackup版本:8.0.8
注意
需要的xtrabackup環境會受到版本影響,為了減少出錯,建議:
xtrabackup8.0搭配mysql8.0
xtrabackup2.4搭配mysql5.7
xtrabackup2.3搭配mysql5.6及以下
但初步解包xb不受版本限制,使用8.0版本即可。
安裝Mysql參照:
https://www.cnblogs.com/shenjianping/p/10984540.html
安裝XtraBackup參照:
https://blog.csdn.net/qq_42534026/article/details/106304496
xtrabackup源代碼分享:
https://pan.baidu.com/s/1Cj-fklCoL3nVJ69oYkukJg
提取碼:ni8a
2、上傳備份.xb文件
本文使用xshell的sftp進行上傳備份文件。
3、解包.xb文件
目前物理備份集文件有以下幾種格式:
.tar壓縮包(.tar.gz后綴)
.xbstream壓縮包(.xb.gz后綴)
.xbstream文件包(_qp.xb后綴)
.xbstream qpress壓縮包(_xb.qp后綴)
拓展
對于tar 壓縮包 (.tar.gz 后綴),使用命令:
對于xbstream 壓縮包 (.xb.gz 后綴),使用命令:
對于xbstream 文件包(_qp.xb 后綴),使用命令:
對于xbstream qpress壓縮包(_xb.qp后綴),使用命令:
對于xbstream qpress壓縮包(_xb.qp后綴),使用命令:
本文以下操作是針對_xb.qp壓縮包格式文件包進行恢復實戰。
01
xtrabackup解包.xb
解壓.xb壓縮包后,得到文件后綴為.qp的壓縮文件,還需要再次進行解壓操作。
02
解壓.qp文件
這一步可能會提示缺少qpress,上面的環境報已經提供該文件,使用一些命令處理qpress即可。
經過2次解包后,已經可以恢復正常的文件結構。在解壓后的文件中找到xtrabackup_info文件,可以找到原始mysql版本,以及壓縮使用的xtrabackup版本,user,備份時間等信息。
如圖上使用的xtrabackup為8.0.8,mysql版本為8.0.18,則不需要再進行更換xtrabackup。
如遇到xtrabackup為2.X版本,則需更換對應的xtrabackup。
4、恢復解壓好的備份文件
恢復時請耐心等待,若系統返回如下類似結果,則說明備份文件已成功恢復。
5、修改權限及配置
恢復完成后,還需要進行最后的配置,防止重建后報錯。
如不知道數據庫密碼,還需要增加參數以跳過密碼驗證。
6、啟動mysql數據庫
以上配置完成后,安裝對應版本的mysql,使用命令啟動。
如以上流程沒有報錯,是可以直接啟動mysql的。
啟動后,新建shell窗口,使用mysql -uroot -p 密碼 進入mysql數據庫,如添加skip-grant-tables參數,可直接跳過數據庫權限驗證,直接進入數據庫。
來源:廣西南寧平衡信息技術有限公司,平衡郭德綱
南京兆柏數據恢復中心