mysql 数据库通过拷贝文件恢复(物理恢复)

 

1、把data内数据库(MySQL5.7.26/data)拷贝到另外一台服务器

一个文件夹是一个数据库,看是全部拷贝还是单个拷贝都可以

3599d869479746a28ad13c5bf8442351.png

2、 删除数据库下的.ibd(数据文件)和.frm(结构文件), db.opt不要删除(db.opt每个数据库文件只有一个)

f4856101511548c9b9c8c393c61cc1a8.png

 3、执行建表sql,新建一样的表结构(新的要还原的数据库)

把原数据库表结构导出一份,导入到新数据库

68d18692db41472c917a2a7fe55277a2.png

4、执行下面语句删除数据库.ibd文件,从原数据库中拷贝.ibd过来;

单表操作
删除
ALTER TABLE table_name DISCARD TABLESPACE;

ALTER TABLE 要生成的表名 DISCARD TABLESPACE;

删除成功后,复制对应表.ibd文件到数据库在执行恢复

恢复
ALTER TABLE 表名 IMPORT TABLESPACE;

下面是批量操作

4.1、获得所有表方法(cdj_shop是数据库,TABLE_NAME 是数据库表)

select TABLE_NAME from information_schema.COLUMNS where TABLE_SCHEMA="cdj_shop" GROUP BY TABLE_NAME;

238d46eefa8248c6943cd925da70eff7.png

 4.2、拼接(删除数据库.ibd文件语句)

插入,恢复数据 ALTER TABLE 表名 IMPORT TABLESPACE;
复制去数据库执行

e114b30c2c494724b283e8d22242ee92.png

 .ibd数据文件已全部删除

21a2bfa976fe4c7fb31e465911c7f105.png

 

拷贝.ibd数据文件过来,搜索出来全部拷贝过去

cf948044993d40a59f5e2c72e3f838e5.png

 

复制去数据库执行导入,恢复

d7d9212b0876475cb4758c98d03624c2.png

完成后,数据全部恢复上来了

d69323f08bf8477584d666594bbbee5c.png

 

 

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
MySQL数据库备份原理是指将数据库中的数据和结构保存到外部存储介质,以便在需要的时候恢复到原始状态或者从备份中恢复数据。 MySQL数据库备份主要有物理备份和逻辑备份两种方式。 物理备份是将数据库物理文件直接复制到备份文件中,包括数据文件、日志文件、索引文件等。这种备份方法比较快速,直接拷贝整个数据库文件,但不方便对单个表或单个记录进行恢复。 逻辑备份是通过SQL语句的方式将数据库中的数据导出到备份文件中。这种备份方法可以选择性地备份指定的表或记录,恢复时也能够选择性地恢复指定的数据。逻辑备份的缺点是备份和恢复的过程比较慢。 MySQL数据库有多种备份方法,包括通过命令行工具使用mysqldump命令进行备份,通过图形界面工具如MySQL Workbench进行备份,以及通过第三方备份工具如XtraBackup进行备份等。 在备份过程中,为了保证备份的完整性和一致性,通常会采用事务的方式进行备份。在备份开始前,会生成一个全局读锁,阻止其他用户对数据库进行写操作,确保备份过程中数据不会发生变化。备份完成后,释放锁,其他用户可以继续对数据库进行操作。 为了确保备份数据的可靠性和安全性,需要将备份文件存储在可靠的外部存储介质中,如硬盘、磁带、云存储等,并定期进行备份文件的校验和验证,以防止备份文件损坏或丢失。 总之,MySQL数据库备份原理是通过物理备份或逻辑备份的方式将数据库的数据和结构保存到外部存储介质中,以便在需要的时候恢复恢复数据。备份过程中会采用事务和锁机制来保证数据的一致性和完整性,同时需要将备份文件存储在可靠的介质中进行保护和验证。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大得369

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值