越简单越好!

mysql5.7 InnoDB 通过frm与ibd对数据进行恢复

发表于 2017-08-30 22:15 | 3160次阅读 1次点赞   Mysql
1. 安装MySQL Utilities
下载地址:https://dev.mysql.com/downloads/utilities/
下载完后直接安装即可
如果运行时需要python就下载 https://dev.mysql.com/downloads/connector/python/
本机还需要安装与需要恢复数据的一样版本的Mysql

2. 使用mysqlfrm命令读取frm的表结构
把需要进行数据恢复的frm文件放到一个目录里
mysqlfrm --diagnostic ./frm文件目录/
这样就可以获得数据表的结构了。

3. 创建新的数据库
把第二步获得的数据表结构执行,创建表。

4. 对已创建的表进行表空间卸载
ALTER TABLE 表名 DISCARD TABLESPACE;
每个表都进行一次空间卸载
停掉MYSQL服务

5. 把原始数据文件里的ibd文件拷到新的数据库文件夹里
这里要注意把拷过来的ibd文件的所有者为mysql
chwon mysql:mysql 数据库文件夹/*
启动MYSQL服务

6. 对数据表进行空间装载
ALTER TABLE 表名 IMPORT TABLESPACE;
每个表都进行一次空间装载

返回顶部 ^