MySQL表格损坏-“找不到文件”错误;有什么方法可以恢复丢失的.myd和.myi文件?

问题描述 投票:3回答:2

我是MySQL初学者,我正在尝试修复我的一个数据库中的损坏表。这是一个简单的IPS论坛,当前在线。今天早些时候,我尝试执行mysqldump并收到此错误:

mysqldump: Got error: 1017: Can't find file: 'wcsf_profile_portal_views' (errno: 2) when using LOCK TABLES

因此,我继续了解问题所在。似乎其中一张表已损坏。我尝试使用修复,但是出现了相同的错误:

mysql> REPAIR TABLE wcsf_profile_portal_views;
+-----------------------------------------------+--------+----------+---------------------------------------------------------+
| Table                                         | Op     | Msg_type | Msg_text                                                |
+-----------------------------------------------+--------+----------+---------------------------------------------------------+
| wecreate_finalforum.wcsf_profile_portal_views | repair | Error    | Can't find file: 'wcsf_profile_portal_views' (errno: 2) |
| wecreate_finalforum.wcsf_profile_portal_views | repair | status   | Operation failed                                        |
+-----------------------------------------------+--------+----------+---------------------------------------------------------+
2 rows in set (0.00 sec)

我查了一下,并在这里尝试了一些建议http://www.databasejournal.com/features/mysql/article.php/10897_3300511_2/Repairing-Database-Corruption-in-MySQL.htm

但是到目前为止,mysqlcheckmyisamchk都没有运气。

请注意,我正在使用MyISAM。我检查了数据库文件夹,它似乎缺少两个文件:wcsf_profile_portal_views.MYDwcsf_profile_portal_views.MYI。但是,文件wcsf_profile_portal_views.frm确实存在。因此,我尝试了REPAIR TABLE wcsf_profile_portal_views USE_FRM;,但再次收到了Can't open table

我还找不到导致腐败的原因。有什么建议吗?

编辑:不情愿,我试图通过旧的备份来还原表。没有骰子-显然,它已经被破坏了一段时间,并且该数据库尤其从未备份,因为它一直在失败。我没注意到Fml。这就是您使用WHM所获得的!对我来说幸运的是,这不是重要的表格。它是Invision Powered板的一部分,我想它算是纵断面图。我在本地重新安装,然后将表复制回实时数据库,已修复,现在看来可以正常工作-我可以成功mysqldump,并且我想现在备份也可以正常工作。

我不会认为这个问题得到了回答,因为我没有完全修复它(数据丢失),而且我也没有找到导致损坏的原因。也许这是与IPB相关的特定问题。

mysql phpmyadmin mysqldump myisam
2个回答
1
投票

。MYD文件包含表中的基础数据,.MYI文件是表上的索引。如果您丢失了数据,除了从某种备份中,我看不到如何恢复。


0
投票

如果存在文件“ tablename.MYI”,则在文件夹“ data / databaseName”中搜索。如果不是,请在另一个数据库(或旧数据库)中获取相同的文件,然后将其粘贴到该文件夹​​中。

启动MySQL,并修复表。

这就是我解决的方法。

对不起,我的英语是这样。

© www.soinside.com 2019 - 2024. All rights reserved.