从数据文件导入MySQL数据库

3
我从一个现已崩溃的旧服务器中获取了MySQL数据文件,因此我无法登录该服务器进行mysqldump等操作。现在我正在尝试在新服务器上加载数据。我唯一的选择是复制/粘贴我拥有的数据文件。但是当我这样做时,一些数据库表会抛出错误“表不存在”,而在我的Navicat窗口中,我可以看到它。问题只出现在某些表中,而非全部表。
我的问题是,如何解决这个错误?或者还有其他导入数据文件的方法吗?

你能否用特定的数据库举个例子,并展示它所拥有的数据文件? - Pekka
数据库中有很多表。对于每个表,都有一个.FRM、.MYD和.MYI文件。这有帮助吗? - Anuj Gakhar
1个回答

1

我能想到的最好建议是在相应的表上运行myisamchk,特别注意修复选项

一定要在备份数据文件之前进行备份。

附加思考:

  • 确保在添加数据文件后重新启动数据库服务器。

  • 您确定正在处理正确的表吗?请注意,在大多数Linux文件系统上,表名区分大小写(因为它反映了文件系统中的文件)。所以tablename!= Tablename


嗯,我尝试了几个不同的选项,但似乎没有解决问题。你知道我应该尝试哪个修复选项吗? - Anuj Gakhar
啊 - 报错的表只有一个 .FRM 文件。没有 .MYI 或 .MYD 文件 - 我有哪些选择? - Anuj Gakhar
@Jimmy 根据这个链接,.frm文件仅包含表的描述信息,不包含数据。我不知道是否有任何工具可以从FRM文件中重建表的结构。 - Pekka
好的,谢谢你的帮助。我将不得不再次挖掘档案以找到.MYD文件。 - Anuj Gakhar

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接