不小心用空数据覆盖了mysql数据库

fec*_*cub -1 mysql disaster-recovery

我不小心使用 mysql-workbench 将一个空的数据库备份文件导入到同一个数据库中。有什么方法可以撤消此操作并取回数据?可用的备份是 4 个月大的,这太旧了,无法恢复,有什么想法吗?

ype*_*eᵀᴹ 11

不,你不能。您已经覆盖了数据库,因此最好的做法是从最新的备份中恢复。如果那是 4 个月大,就是这样,您丢失了 4 个月的数据。

您应该更频繁地进行备份,并且在任何关键操作(如这个)之前进行备份,如果出现错误,有可能破坏数据。


附录

在您通过恢复 4 个月前的备份再次覆盖数据库之前 - 根据您丢失的数据的价值 - 您可以执行以下操作:

  • 立即停止数据库实例/服务。
  • 确保它不会重新启动(MySQL 通常安装了一个“看门狗”,当它失败时会重新启动它)。
  • 将 mysql 目录或整个文件系统的完整操作系统级别备份到另一个外部磁盘/文件系统。

您可能会找到(非常昂贵的)公司/服务,它们可能能够恢复您丢失的某些数据。

甚至可能更好 - 如果您走昂贵的路线 - 保留这台机器(完全关闭或停止所有服务但不关闭或执行这些顾问告诉您遵循的任何事情;在您采取任何严重行动之前联系他们)并恢复备份在一台单独的机器上,所以你有最好的机会从现有的机器/安装中恢复任何数据。