Mysql通过ibd文件恢复数据的详细步骤

 更新时间:2022年06月28日 16:30:39   作者:Huang_Allen  
mysql在使用的过程中,难免遇到数据库表误操作,下面这篇文章主要给大家介绍了关于Mysql通过ibd文件恢复数据的详细步骤,文中通过实例代码介绍的非常详细,需要的朋友可以参考下

恢复步骤

1、创建数据库(随意创建)

2、创建数据表(备注:表结构要和要恢复的表结构一致,row_format要和ibd文件的row_format一致,否则,会提示两者不一致。 当前row_format=dynamic)

3、表的属性查看

我们使用:show table status like ‘matlab’\G,查看表的属性

备注:创建表时候的row_format和表属性的不一致,基于innodb是,要把row_format设置成dynamic时,需要修改mysql的全局配置,直接在myql命令中修改:set global innodb_file_format=Barracuda;

4、表错误信息查看 show warnings

5、说明

我们在恢复表的时候,要保证row_format和ibd文件的一致,如果ibd文件是compact的话,需要建表的时候,设置成row_format=compact,在恢复的时候,自行解决,从第6步开始,重点说明如何去恢复。

6、恢复第一步:移除表空间

 **alter table matlab DISCARD TABLESPACE;**

7、恢复第二步:将备份的ibd文件,放到mysql->data->创建的数据库名称->,将ibd拷贝到此目录下,如下图所示
具体路径查看

-- 使用sql查询数据目录
**show global variables like '%datadir%';**

8、恢复第三步:重新导入表空间

 **alter table matlab IMPORT TABLESPACE;**

9、当执行到上一步完成后,我们发现数据库中的数据已经完全恢复过来了

10、数据表的结构一定要和恢复前的数据表结构一致,否则恢复失败,导致mysql进程重启,详细情况需要查看mysql的error日志进行分析,另外,mysql的CE工具提供了便捷的mysql参数配置修改功能

补充:Innodb与MyISAM存储文件的区别

Innodb存储文件分为:.frm,.idb
    .frm:存储表定义
    .ibd:存储数据和索引
MyISAM存储文件分为:.frm,.myd,.myi
    .frm:存储表定义
    .myd:存储数据
    .myi:存储索引

总结

到此这篇关于Mysql通过ibd文件恢复数据的文章就介绍到这了,更多相关Mysql ibd文件恢复数据内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Servermanager启动连接数据库错误如何解决

    Servermanager启动连接数据库错误如何解决

    这篇文章主要介绍了Servermanager启动连接数据库错误如何解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-10-10
  • 新手学习MySQL索引

    新手学习MySQL索引

    如果正确合理设计并且使用索引的MySQL是一辆兰博基尼的话,那么没有索引的MySQL就是一个人力三轮车。通常大型网站单日就可能会产生几十万甚至几百万的数据,没有索引查询会变的非常缓慢,下面小编来带大家了解下索引
    2019-05-05
  • MySQL一劳永逸永久支持输入中文的方法实例

    MySQL一劳永逸永久支持输入中文的方法实例

    相信大家在使用MySQL数据库的过程中,或多或少都遇到报错,下面这篇文章主要给大家介绍了关于MySQL一劳永逸永久支持输入中文的相关资料,文中通过图文介绍的非常详细,需要的朋友可以参考下
    2022-08-08
  • RedHat6.5安装MySQL5.7教程详解

    RedHat6.5安装MySQL5.7教程详解

    这篇文章主要为大家详细介绍了RedHat6.5下MySQL5.7的安装教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-03-03
  • MySQL分区表的局限和限制详解

    MySQL分区表的局限和限制详解

    本文对Mysql分区表的局限性做了一些总结,因为个人能力以及测试环境的 原因,有可能有错误的地方,还请大家看到能及时指出,当然有兴趣的朋友可以去官方网站查阅。
    2017-03-03
  • 讲解Linux系统下如何自动备份MySQL数据的基本教程

    讲解Linux系统下如何自动备份MySQL数据的基本教程

    这篇文章主要介绍了Linux系统下如何自动备份MySQL数据的基本教程,还给出了利用shell脚本全备份和增量备份的基本方法,需要的朋友可以参考下
    2015-11-11
  • MySQL BinLog如何恢复误更新删除数据

    MySQL BinLog如何恢复误更新删除数据

    这篇文章主要介绍了MySQL BinLog如何恢复误更新删除数据问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-06-06
  • mysql存储过程之错误处理实例详解

    mysql存储过程之错误处理实例详解

    这篇文章主要介绍了mysql存储过程之错误处理,结合实例形式详细分析了mysql存储过程错误处理相关原理、操作技巧与注意事项,需要的朋友可以参考下
    2019-12-12
  • MySQL 8.0.23 主要更新一览(新特征解读)

    MySQL 8.0.23 主要更新一览(新特征解读)

    这篇文章主要介绍了MySQL 8.0.23 主要更新一览(新特征解读),需要的朋友可以参考下
    2021-01-01
  • MySQL如何使用使用Xtrabackup进行备份和恢复

    MySQL如何使用使用Xtrabackup进行备份和恢复

    Xtrabackup是由Percona开发的一个开源软件,可实现对InnoDB的数据备份,支持在线热备份(备份时不影响数据读写)。本文讲解如何使用该工具进行备份和恢复
    2021-06-06

最新评论