如何在MySQL上恢复丢弃的数据库

时间:2014-09-04 17:02:47

标签: database-administration recovery system-administration

我意外地删除了一个关于MySQL yog ultimate的数据库。此外,我发现IT人员从机器上卸载了MySQL yog。

现在正在处理两台机器,其中包括从中删除数据库并卸载mysql的机器。

有没有办法恢复已删除的数据库。

3 个答案:

答案 0 :(得分:2)

实际上只有一个词:备份

答案 1 :(得分:2)

您在评论中说,您在数据丢失前的几个小时内有备份。

如果您还有二进制日志,则可以还原备份,然后从二进制日志中重新应用更改。

以下是此操作的文档:http://dev.mysql.com/doc/refman/5.6/en/point-in-time-recovery.html

您甚至可以过滤二进制日志以仅为一个数据库重新应用更改(mysqlbinlog --database name )。例如,您可能有其他未放在同一实例上的数据库,并且您不想重新应用对其他数据库的更改。

恢复两个小时的二进制日志不会花费很长时间。"最棘手的部分是确定开始重放二进制日志的起点。如果您足够幸运,可以在备份中包含二进制日志位置,这将更简单,更精确。如果你必须按时间戳进行,那么它就不那么准确了,你可能不希望做到精确恢复。

如果您在备份数据库后没有在此实例上启用二进制日志,那么对丢失文件进行数据恢复会非常棘手。您可以使用像EaseUS Data Recovery Wizard这样的文件系统取消删除工具(虽然我不能说我有使用该工具的经验)。

重建你恢复的文件不适合胆小的人,而且进入这里太过分了。您可能希望从专业的MySQL咨询公司获得帮助。我为一家这样的公司Percona工作,他提供data recovery services

答案 2 :(得分:0)

MySQL删除数据库后,数据仍在介质上保留了一段时间。因此,您可以使用DBRECOVER获取记录并重建数据库。

mysql>删除数据库雇员; 查询正常,受影响的14行(0.16秒)

#sync #sync

选择删除数据库恢复

选择您所使用的MYSQL VERSION;页面大小应保留为16k

单击“选择目录”,然后输入@@ datadir目录

!!!警告:您应该在此处输入@@ datadir目录。请不要将@@ datadir目录复制到任何其他文件系统或挂载点,并使用复制一个。该软件需要扫描原始文件系统或挂载点,否则将无法正常工作。您最好将@datadir挂载点设置为只读,以避免需要更多的磁盘写操作。并且不要在同一文件系统上找到DBRECOVER软件包。

https://youtu.be/ao7OY8IbZQE