我只从.frm和.idb文件恢复了表.
>首先,我在笔记本电脑上安装了MySQL Utilities.
然后,您可以在命令提示符(cmd)中使用mysqlfrm命令.
>其次,我在cmd中使用mysqlfrm命令从.frm文件中获取了sql查询.
mysqlfrm --diagnostic /example_table.frm
然后,您可以获取sql查询以创建相同的结构化表.
像这样:
CREATE TABLE `example_table` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`username` varchar(150) NOT NULL,
`photo_url` varchar(150) NOT NULL,
`password` varchar(600) NOT NULL,
`active` smallint(6) NOT NULL,
`plan` int(11) NOT NULL,
PRIMARY KEY `PRIMARY` (`id`)
) ENGINE=InnoDB;
我使用上面的sql查询创建了表.
>第三,我运行此查询以删除新的表数据.
ALTER TABLE example_table DISCARD TABLESPACE;
这删除了新的.frm文件和.idb文件之间的连接.
还删除了文件夹中的.idb文件.
>第四,我把旧的.idb文件放在新文件夹中.
我运行此查询以导入旧数据.
ALTER TABLE example_table IMPORT TABLESPACE;
这是从.idb文件导入的数据,最后,我恢复了旧的数据表.
我相信这会对你有所帮助.
谢谢.