记一次mysql根据.frm.ibd文件恢复数据

记一次mysql根据.frm.ibd文件恢复数据
背景:
公司用的阿里云mysql 5.6数据库,阿里云的控制台上做了两天一备份的设置。当我发现我误操作drop了一张表之后,我从控制台上下载了备份的压缩包,解压之后拿到我drop的那张表(sys_users)的.frm.ibd文件

1:本地建一个相同的数据库(AA)和相同表结构的表(sys_users)
(一定要一摸一样的表结构)
(这一步之后,在mysql安装目录/data/AA/ 目录下你会发现sys_users.frm,sys_users.ibd文件)

2: 清除表空间 alter table sys_users discard tablespace ;
(执行这个命令后 sys_users.ibd文件会消失)

3:关闭数据库
4:将你前面从阿里云拿到的sys_users.frm,sys_users.ibd放到mysql安装目录/data/AA/ 目录下
(该覆盖的覆盖)

5:启动数据库

6: 导入表空间 alter table sys_users import tablespace;

7:navicat查看表数据有没有问题,如果有乱码或者字段错位,那可能是没有创建一摸一样的表结构,我曾卡在这里怀疑人生,😢
如果没问题,就可以用navicat的数据传输工具,将本地sys_users的数据传输到公司数据库,

结束!

总结一下吧:
数据肯定会丢失一部分的,阿里云上的备份是前一天的
开始采用的办法是根据binlog日志恢复数据,但是我却不知道数据库所在哪台服务器,更不知道数据库的安装目录,这是使用阿里云数据库的一个弊端,阿里云上恢复数据是要收费的哦。所以还是买阿里云的服务器,然后在服务器上安装mysql数据库吧

骄傲的程序员们,数据一定要备份,给自己一条后路😄

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值