基于本地MySQL操作
原因:比较方便
这个方法比较繁琐 有一步到位的大佬可以留言指教
一、安装PHPstudy、Navicat(MySQL连接工具)
二、本地数据库创建数据库
三、执行恢复(重点)
1、创建要恢复的表
2、执行解除绑定
alter table 要恢复的表名 discard tablespace;
3、找到本地数据库文件保存的位置
4、关闭MySQL
5、复制要恢复的表的备份的.ibd文件
6、绑定frm和idb文件
alter table 要恢复的表名 import tablespace;
搞定!
注意:
如果创建数据表报错:
Error Code: 1808. Schema mismatch (Table has ROW_TYPE_DYNAMIC row format, .ibd file has ROW_TYPE_COMPACT row format.)
则在建表语句后加上 ROW_FORMAT=COMPACT
说明:
- .frm文件+ibdata1(该数据库使用了InnoDB存储引擎)
通俗一点说,frm只有表的结构 - frm+.MYI+.MYD文件(该数据库使用了MyISAM存储引擎)使用MyISAM引擎存储的数据库生成3个文件:①同样的,frm文件存储表定义;②.MYD(MYData)文件是存储数据的文件;③.MYI(MYIndex)是索引文件