MySQL 索引损坏导致数据丢失!如何恢复数据?

MySQL 索引损坏导致数据丢失!如何恢复数据?

以下是我的问题的介绍。

几天前,我无法在 Wamp 中启动 MySQL 服务!好吧,我搜索了很多 Google 信息,想找到无法启动的解决方案,有人建议关闭 Wamp,删除一个索引文件,然后重新启动 Wamp(这样 Wamp 就会尝试重新创建损坏的索引,或类似操作)

我删除的文件是这个:

bin\mysql\mysql5.6.12\data\mysql-bin.index

好的,重新启动后,我在系统尝试中再次看到绿色图标,服务开始正常工作。

现在,该索引文件包含如下内容:

.\mysql-bin.000029
.\mysql-bin.000030
.\mysql-bin.000031

在此错误之前,它具有与数字相同的结构000001-000028

我正在使用 Wamp 2.4 (x86) 和 Apache 2.4.4/MySQL 5.6.12/PHP 5.4.16。

问题就在这里。

之后,我尝试访问一些最新的 php 项目,但在浏览器中,所有项目都收到了类似的错误消息。

Fatal error: Uncaught exception 'PDOException' with message
'SQLSTATE[42S02]: Base table or view not found: 1146 Table 'dbname.tablename'
doesn't exist' in C:\wamp\www\... on line xxx

我启动了 Navicat Premium 来查看问题所在,乍一看,所有数据库和表都在那里(现在仍然在那里)。从未对 Wamp 安装进行任何更改,因此用户名和密码仍然相同("root"/"")

然后我意识到数据库中的表只是列表中的名称。当我尝试打开其中任何一个时,我得到了错误1146 - Table 'database_name.table_name' doesn't exist

在此处输入图片描述

我没有备份!

现在我可以创建新的数据库/表,它们可以工作,但不能使用旧的 dbs/tbls。我能做些什么来恢复这些数据库/表吗?实际上只有一个数据库很重要,因为我没有那个数据库的备份。

我尝试mysql-bin.index手动创建文件,包含所有行(000001-000031),但仍然不起作用。我尝试在网络上寻找解决方案,包括 StackOverflow 和 MySQL 官方网站,但没有找到任何可用的解决方案。我找到了一些提示,但没有解决我的问题,或者我只是不知道如何遵循说明。

更新 #1

下载完整的“数据”目录(1.2Mb)

相关内容