从联机服务器还原截断表

6rqinv9w  于 2021-06-21  发布在  Mysql
关注(0)|答案(1)|浏览(369)

我不小心从在线服务器截短了我的表,我无法备份它。请任何人帮我做什么。

rqcrx0a6

rqcrx0a61#

最可行,最少的工作:
从备份
如果你有,再检查一遍
询问你的主人他们是否做备份;对于某些设置,它们的默认配置可能包括您不知道的备份,例如wordpress的数据库备份或具有vm的文件备份
在某些情况下可行,如果适用,很少工作:
从二进制日志。检查它们是否已启用(可能是宿主默认配置的一部分,也可能只有宿主可以访问它们,因此您可能需要询问它们)。它们包含对数据库的最新更改,如果幸运的话,“最近”可能足够长,可以包含所有内容
不太可行,工作更多:
尝试从相关数据中恢复,例如历史表、其他相关表或日志文件(例如mysql常规查询日志或应用程序创建的日志文件);你可以试着分析它们,找出表中应该有什么
最不可行、最多工作、最昂贵:
理论上,由于数据在被新数据覆盖之前仍存储在硬盘上,因此可以尝试恢复数据,类似于在硬盘上查找丢失的块或删除的文件的工具
您需要停止硬盘上的任何活动以增加成功的可能性。这将取决于您的配置和设置。e、 例如,在共享主机中,释放的磁盘空间可能会被您无法控制的其他用户覆盖,另一方面,如果您使用的是innodb并且禁用了innodb\u file\u per\u表,则数据存储在单个文件中(并且磁盘空间不会被释放),因此停止mysql服务器应该可以防止任何剩余的可恢复数据被覆盖。
虽然有一些工具可以帮助您做到这一点,但您可能需要花钱请人帮您做到这一点(即使这样,您也只能取回到目前为止尚未被覆盖的数据),因此只有在您的数据非常有价值的情况下,此选项才最有可能可行

相关问题