前提条件:
1 ibdata1 被删除
2 数据库文件还存在 特别是 ibd文件
3 原来数据库表结构及索引还在
恢复步骤:
1. 将原来的数据文件COPY到其它目录下。
2. 创建同名表,表结构必须保持一致。
3. 导出表空间
mysql> ALTER TABLE t DISCARD TABLESPACE;
4. 将原来的数据文件( ibd文件)COPY回来 注:由于是手动复制过来,请注意复制后文件的权限,以免无法修改而引起错误
5. 导入表空间
mysql> ALTER TABLE t IMPORT TABLESPACE
注意:本步骤可以重复执行,已经建立表空间的表会自动跳过。如果数据过大,命令可能会卡死,可以重复执行来完美跳过。