废话不多说直接进入正题,Mariadb,Mysql根据.frm和.ibd文件来恢复数据和表结构,大体分为三个步骤:

1.创建表结构

2.导入表结构

3.恢复表数据

接下来,我们按照这三个步骤一步一步恢复。

1.1进入数据库中,创建表结构,需要注意的是表名需要和恢复的表名相同,字段不需要相同(如果记得表结构,可一次性创建成功直接进入第三步),输入命令"create table techarticlevisitstatistics(id int);",如下图所示:

1.2创建成功之后,断开mysql服务,打开表所在的文件夹,一般都会在..\MariaDB\data\数据库名,将需要恢复的表结构.frm文件替换掉刚才创建的表结构,然后设置my.ini文件,添加语句"innodb_force_recovery = 6"表示现在需要恢复表数据,表结构为唯读,连接mysql服务,进入数据库,输入命令"desc techarticlevisitstatistics",如果出现错误类似于"Table 'personalsite.techarticlevisitstatistics' doesn't exist in engine",如下图所示:

1.3接下来打开日志文件查看日志,我们可以看到如下所示的错误信息:"Table personalsite/techarticlevisitstatistics contains 1 user defined columns in InnoDB, but 3 columns in MariaDB...",我们可以看到源表结构有三列,但是我们创建的表结构只有一列,那怎么办,此时我们需要删除已经创建的表,需要注意的是需要将my.ini文件中的"innodb_force_recovery = 6"注释掉,否则会提示表示唯读,并且重启mysql服务,然后重复之前1.1,1.2的动作,此时表需要创建为3列,如下图所示:

1.4以上动作完成之后,我们输入"desc techarticlevisitstatistics;"我们可以看到替换成功的表结构,很完美第一步我们已经完成了。

2.1此时我们需要导出表结构,可以使用navicat或者mysql workbench等导出表结构,目前我是用mysqldump命令来导出表结构,打开cmd,输入命令"mysqldump -uroot -p123456 -d personalsite techarticlevisitstatistics>\root\techarticlereview.sql",导出成功之后我们可以在目录下看到sql文件,打开sql文件,复制创建表结构的语句,如下图所示:

2.2删除已经创建的表结构,执行刚才复制的创建表语句,我们可以得到一个新的表结构,到了这一步我们已经完成70%,接下来我们就需要恢复数据了。

3执行 alter table techarticlevisitstatistics discard tablespace ,执行完之后,数据库目录下的techarticlevisitstatistics.ibd文件就会消失,然后我们把需要恢复的.ibd文件复制过来,执行 alter table techarticlevisitstatistics import tablespace,此时我们的数据就完全恢复成功了。

frm ibd文件导入mysql_Mariadb,Mysql如何根据.frm和.ibd文件来恢复数据和表结构相关推荐

  1. mysql ibd frm文件_Mariadb,Mysql如何根据.frm和.ibd文件来恢复数据和表结构

    废话不多说直接进入正题,Mariadb,Mysql根据.frm和.ibd文件来恢复数据和表结构,大体分为三个步骤: 1.创建表结构 2.导入表结构 3.恢复表数据 接下来,我们按照这三个步骤一步一步恢 ...

  2. bak文件导入到mysql,如何将SQL Server .bak文件导入MySQL?

    The title is self explanatory. Is there a way of directly doing such kind of importing? 解决方案 The .BA ...

  3. php将excel导入mysql,PHP实现将EXCEL文件导入到MYSQL

    最近因项目需求,要实现将excel文件通过php页面导入mysql数据库中.在网上搜了很多这方面的资料,发现都是将excel文件另存为csv文件,然后从csv文件导入.这里介绍一个直接将excel文件 ...

  4. excel xml mysql数据库,数据库文本文档excel表格-excel xml格式的文件 导入到 MYSQL 数据库的语句...

    教你怎样将Word表格导入到Excel中 方法如下: 1.首先,打开媒介工具"记事本",将word文件里需要导入的数据,复制粘贴到记事本当中,然后保存成为txt文件,本例中将txt ...

  5. mysql导出数据库数据及表结构

    mysql导出数据库数据及表结构 1,导出远程数据库数据到本地 mysql -A wj_sms -h192.168.1.105 -uroot -p4321 -ss -e "set NAMES ...

  6. mysql中清空数据库数据保留表结构

    – mysql导出视图以及表结构 #mysqldump -uuser -ppassword --d database_name> database_name_date.sql – 只导出数据不导 ...

  7. mysql中清空数据库数据保留表结构(史上最简单,一句话搞掉)

    这里简单说下我们公司信息化平台在云上部署上线的情景,mysql数据库被分在了测试机和正式机,测试机是开发人员对数据库进行表结构修改例如字段信息的场景,而正式机是对外部的业务,因此正式机的数据是最终使用 ...

  8. mysql中表结构语句_mysql中表数据与表结构复制语句

    本文章来给各位朋友介绍一下关于在mysql中进行表数据与表结构复制语句,方法会有很多种下面我来介绍介绍,有需要了解的朋友可参考. 先来总结复制表与结的方法 一.CREATE TABLE 方法 整表复制 ...

  9. 将csv文件导入到mysql数据库

    统一编码方式为utf-8,将csv文件编码方式设置为utf-8. 在数据库中新建一个表,列属性和csv文件要相符,注意将**月**日等在csv中设置为日期格式,而不是字符串之类的,这样可以将时间等导入 ...

最新文章

  1. [Linux] PHP程序员玩转Linux系列-Linux和Windows安装nginx
  2. JavaScript typeof() 这个函数是干什么用的?有几个参数,每个参数代表什么?
  3. JQuery利用css()修改样式后 hover失效的解决办法
  4. QDoc命名事物Naming Things
  5. 侵犯著作权法定赔偿额上限提高至500万元
  6. C#算法设计排序篇之11-二叉树排序(附带动画演示程序)
  7. ajax modelmap,spring mvc+ajax处理JSON返回前台的方法
  8. 古代的酒到底多少度,为何古人动不动喝好几坛都不会醉呢?
  9. chrome 您即将提交的信息不安全_各地市场监督管理局发布食品安全抽检信息 通报不合格样品批次...
  10. python学习网站-有哪些值得推荐的Python学习网站?
  11. tensorflow实现LeNet-5模型
  12. 前后端分离导出excel_Vue + .NetCore前后端分离的快速发开框架
  13. 快速排序 C语言实现
  14. 反函数抽样(包括离散的)
  15. win7没有权限使用计算机的,Win7提示你可能没有权限使用网络资源|未授予用户在此计算机解决方法...
  16. java中依赖_java中依赖、关联、聚合
  17. 数学建模——熵权法步骤及程序详解
  18. 图机器学习——2.3 整图嵌入
  19. 获取客户端及服务器的信息
  20. 什么软件可以测试自己有没有近视,微信APP中怎么测试自己的视力

热门文章

  1. android中自定义的dialog中的EditText无法弹出输入法解决方案
  2. linux命令详解——tee
  3. 响应式Web设计的9项基本原则
  4. .NET连接SAP系统专题:C#如何导入内文至SAP(十一)
  5. java字符类型的返回值,Java字符类isWhitespace()方法及示例
  6. xp的服务器系统怎么安装win7系统教程,怎么在xp系统下安装win7双系统教程
  7. 全选和全不选(管理员列表)----html文件
  8. 微课|中学生可以这样学Python(例9.1):Excel导入SQLite(1)
  9. Python使用Apriori算法查找关系密切的演员组合
  10. python列表的小东西_小谈python里 列表 的几种常用用法