奇怪的MySQL表问题

奇怪的MySQL表问题

我已将 /var/lib/mysql/mydbname db 从崩溃的服务器(使用实时 cd 启动)复制到新机器,但现在我无法访问数据库中的表...

所有表都只有 .frm 扩展名,因此我假设它们是 InnoDB。

它们出现在 SHOW TABLES 语句中,但我无法从中进行 SELECT。

修复/优化/分析全部给予;

+---------------+-------+----------+-------------------------------------+
| Table         | Op    | Msg_type | Msg_text                            |
+---------------+-------+----------+-------------------------------------+
| mydbname.xyz  | check | Error    | Table 'mydbname.xyz' doesn't exist  |
| mydbname.xyz  | check | error    | Corrupt                             |
+---------------+-------+----------+-------------------------------------+

myisamchk 不会触碰它们(显然)......

我现在感觉有点没有选择。

提前致谢。

答案1

如果是 InnoDB,那么您需要从崩溃的服务器复制 ibdata* 和 ib_logfile* 文件,但这样一来,您就会获取其他数据库的表数据,而这一切都太痛苦了。请从备份中恢复。

相关内容