RDS数据库文件备份恢复

前言

前几天做数据更新的时候,手抖了一下,把数据删除了。幸好阿里云有7天的备份,马上下载了备份文件,想要备份。参照官方备份恢复解决方法:https://help.aliyun.com/knowledge_detail/41817.html?spm=5176.11065259.1996646101.searchclickresult.569d1aa3t4iUZc。觉得很繁琐。在想有没有更加简单的数据恢复方法。目前使用如下方法简单易用。

备份恢复

从RDS下载的备份文件解压后,会得到.ibd和.frm的文件。例如user.frm,user.ibd。如果要恢复user表,步骤如下:

  • 在本地建一张与user表字段一模一样的表。查看下本地的数据目录(windows一般就在你mysql安装目录的data路径下),就会有user.frm,user.ibd
  • 执行alter table user discard tablespace,会删除本地user.ibd文件
  • 把备份的user.ibd复制到本地user下
  • 执行 alter table user import tablespace
  • 完成。

教训

千万别手抖。

阿里云RDS数据库备份有多种方法及相关信息如下: ### 远程全量手动备份 可进入容器远程备份RDS数据库,使用命令: ```bash docker exec -it mysql-xhy bash mysqldump -hfks.mysql.rds.aliyuncs.com -uroot -p123456789 -R -E --set-gtid-purged=OFF boot_security_new >boot_security_new.sql ``` 之后可在本地创建数据库恢复备份,命令为: ```bash create database boot_security_new; mysql -uroot -p123456 boot_security_new </boot_security_new.sql ``` 此方法适用于需要手动进行全量备份的场景 [^1]。 ### 基于不同版本的本地备份方案 不同的RDS MySQL版本对应不同的存储类型系列所需插件: - MySQL 5.7、5.5版本,适用本地SSD高可用版,需要插件Percona XtraBackup 2.4。 - MySQL 8.0版本,适用本地SSD高可用版,需要插件Percona XtraBackup 8.0 [^2]。 ### 安装备份工具 在Linux服务器上,根据不同的MySQL实例版本安装相应的Percona XtraBackup: - 对于MySQL 5.7、5.6或5.5实例,安装Percona XtraBackup 2.4,安装教程链接:https://www.percona.com/doc/percona-xtrabackup/2.4/installation.html?spm=a2c4g.11186623.0.0.58212df0qamTnP - 对于MySQL 8.0实例,安装Percona XtraBackup 8.0 [^3]。 ### 远程拷贝备份文件 可以在PowellShell下远程拷贝文件到服务器,相关命令如下: - 拷贝文件: ```powershell scp 本地文件 远程用户名@远程ip: /远程目录/ ``` - 拷贝目录: ```powershell scp -r 本地目录 远程用户名@远程ip: /远程目录/ ``` 此方法可用于将备份文件传输到指定服务器 [^4]。
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值