当我的虚拟机崩溃时,我正在虚拟机上运行的本地开发 MySQL(v15.1)上运行 ALTER TABLE;这导致数据库损坏,据我所知,文件table.frm
长度已变为 0 字节,而匹配的文件似乎仍然包含数据(如果我将文件放入记事本中,table.idb
我可以隐约看到数据)。idb
我怎样才能恢复这个表/数据?或者如果我不能,那么有没有办法从 idb 文件中查看数据,然后尝试手动重建它(它只包含大约 100 条[非常重要的]记录)。
令人恼火的是,我似乎甚至无法删除表格并构建一个固定的替代品;(a)我可以DROP TABLE
,但CREATE TABLE
说"#1813 - Tablespace for table 'mydb.table' exists. Please DISCARD the tablespace before IMPORT."
- 并且(b)尝试删除.frm 和.ibd 文件并尝试执行CREATE TABLE
仍然给我一条'#1050 Table ... already exists'
消息。