简单粗暴

恢复user表 1、先建立和之前user表一样的表结构。就是执行create table user .... ,执行完,数据库目录下就会建立user.ibd文件(当然还有其他的)

2、执行 alter table `user` discard tablespace ; 执行完之后,数据库目录下的user.ibd文件就没了

3、把你备份的ibd放到消失的user.ibd文件那里。

4、给这个文件加权限,所有者mysql ,权限660(你可以参考别的ibd文件所有者和权限设置) (这一步我直接略过,没管,其它4步是必不可少的)

5、执行 alter table `user` import tablespace; 执行完,表数据就可读了,这时候会丢失一些诸如表行记录数等存在系统表里的信息,不过那些信息无所谓。表其实这时候已经可以正常用了。如果不放心,可以导出sql语句或txt,再创建表导入。

该文章源自  https://blog.csdn.net/zhouhaisunny/article/details/77489237

感谢分享技术知识的大佬,让技术流行起来。

MySql数据库通过idb和frm恢复的更多相关文章

  1. MySQL数据库的数据备份和恢复(导入和导出)命令操作语法【转】

    不管是Oracle数据库还是SQL Server数据库,每个数据库都有自己的一套数据备份和恢复的方法,MySQL数据库也不例外.MySQL数据库备份和恢复用到了两个命令,分别是“mysqldump”和 ...

  2. mysql数据库密码的修改与恢复

    一.mysql密码的修改与恢复 1.修改密码 mysqladmin -u root -p123 password 456 数据库内修改 method.first: update mysql.user ...

  3. entityframework使用CodeFirst创建MySql数据库出错的解决方法恢复

    先告诉大家一个秘密,EF在使用 update-database 时候,使用的连接字符串来自于解决方案中的“启动项目”,而不是你在包管理器中选择的“默认项目” 0x01. 先说错误,方便大家检索到 开发 ...

  4. MySql数据库恢复(*frm)文件

    mysql数据库恢复(*frm)文件 WorkBench 在使用虚拟服务器时,服务器提供商一般不会像我们使用本地数据库一样:使用导入导出(这样的文件后缀是*.sql).大部分时候提供的是一个文件夹,里 ...

  5. 用(*.frm *.MYD *.MYI)文件恢复MySql数据库

    保存下来以防以后遇到 今天还原mysql数据库时,看到那个data文件夹下好几个文件,还没有.sql文件,没有见过,总结下.Data文件夹里面包括:数据库名文件夹,文件夹里包括,*.frm,*.MYI ...

  6. MySQL Innodb数据库误删ibdata1后MySQL数据库的恢复案例

      上周,以前公司的同事朋友找我帮忙,看看能否帮忙恢复一个MySQL 数据库,具体情况为:数据库版本为MySQL 5.6(具体版本不清楚),也不清楚具体的数据库引擎; 没有数据库备份,只剩下数据库下面 ...

  7. 如何在删除ibdata1和ib_logfile的情况下恢复MySQL数据库

    昨天,有个朋友对公司内部使用的一个MySQL实例开启binlog,但是在启动的过程中失败了(他也没提,为何会失败),在启动失败后,他删除了ibdata1和ib_logfile,后来,能正常启动了,但所 ...

  8. Xtrabackup原理及使用innobackupex进行MySQL数据库备份恢复

    Xtrabackup是由percona提供的mysql数据库备份工具,据官方介绍,这也是世界上惟一一款开源的能够对innodb和xtradb数据库进行热备的工具. Xtrabackup中主要包含两个工 ...

  9. 如何恢复Mysql数据库

    这里说的MySql恢复数据库,是指没有通过正常备份的情况下,通过Mysql保存的数据文件如何恢复数据库. 由于在一台测试机器上打算重新安装Mysql数据库,由于简单粗暴的直接卸载了,没有备份公司Dis ...

随机推荐

  1. redis注册为window服务

    打开redis安装路径并执行:redis-server --service-install redis.windows.conf 安装服务命令 执行完命令后打开电脑服务 此时服务还未启动,执行命令:r ...

  2. python numpy科学计算和数据分析的基础包

    import numpy as np #创建ndarray# data1 = [6, 5, 7, 1, 3]# arrl = np.array(data1)# print(arrl)#多维列表创建nd ...

  3. UITextField只能输入数字NSCharacterSet实现

    - (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementS ...

  4. Servlet和Filter的区别

    1.Filter是一个接口,而Servlet是一个类继承于Httpservlet 2.生命周期的不同,Filter在Web App被加载时,创建该Filter的实例,并调用init()方法(仅创建一个 ...

  5. 如何在cisco官网上下载Cisco packet tracer模拟器

    这个是“思科网络技术学院”提供的一个软件,需要注册成为学员以后才能用,注册名字可以更改. 进入网站后,上面七个选项,cisco Networking Academy.课程(下边第七个选项“Packet ...

  6. Java将string内容写入到TXT文件

    private static String filePath = "E:\\test.txt"; private static void saveAsFileWriter(Stri ...

  7. js for 循环示例

    //for 循环 ,,,,,,]; ; i < array.length; i++) { console.log(i,array[i]); } //for in ,,,,,,]; for(let ...

  8. 使用Python编的猜数字小游戏

    import random secret = random.randint(1, 30) guess = 0 tries = 0 print("我叫丁丁,我有一个秘密数字!") p ...

  9. linux基础命令连接命令ln

    ln  -s  /etc/issue   /tmp/issue.soft 创建文件/etc/issue 的软连接/tmp/issue.soft 不带-s 生成硬链接文件. 软连接类似于windows的 ...

  10. MS17-010漏洞复现

     攻击机:192.168.148.132  kali linux2018.2  x64 靶机:192.168.1.129    win7   x64 首先用msfconsole的smb模块扫描,看看是 ...