如何恢复SQLServer误删除的数据

在操作数据库的时候难免会出现失误,导致数据误删。上两天由于粗心大意将一个才收集完信息的表 TRUNCATE 掉了,而且服务器并没有做任何的备份处理。不能通过备份文件来恢复数据,那就只能另想办法了。
于是我到度娘检索很多方法,尝试了以下几个方法:

  1.  Lumigent Log Explorer
  2.  Recovery For SQL Server的Demo版本
  3. 鱼肠的MDFVIEW
  4. D-RecoverySQLServer2019_x64的2.6版本

Lumigent Log Explorer:

安装完成之后附加日志文件一直失败,可能是我操作有问题。

Recovery For SQL Server的Demo版本:

通过附加日志文件后删除的数据全部显示出来了,但是我把数据导出来的时候只有前面20条数据能正常显示,剩余的文本格式的数据全都是'DEMO'代替,不愧是Demo版本!不过至少我能看到我删除的数据了,这让我看到了数据恢复希望。接下来我想既然我不能导出来,那我能不能把他截图,通过ORC技术识别出来。可是目前市面上ORC识别工具对于这种密集型表格的识别度真的很低,读出来的数据基本没法用。只能再想其他办法了。

鱼肠的MDFVIEW:

日志文件读取之后能正常显示被删除的数据,但是还有一些莫名其妙的数据。然后就是导出需要联系鱼肠本人,我咨询了一下费用挺高的,对于我200多条数据来说不划算,实在不行就一条条数据重新录入进去。

D-RecoverySQLServer2019_x64的2.6版本:

在使用这个软件之前我还使用过2.9版本的,这个也是需要付费的,但是他可以复制单个单元格里数据,虽然操作起来比较麻烦。在操作了30条数据花了我一个多小时,效率太低了,还得想办法,然后就找到了这个2.6版本的,这个版本和2.9基本是一样的,但是他的导出功能是不需要付费的,并且导出来的数据基本没问题,就是长数字会转换成科学计数,可能是软件的数据类型识别没处理好。但是关系不大,至于被科学计数数据就重新在复制一下算了,毕竟我只有200条数据。

下载地址:http://xiazai.zol.com.cn/detail/47/467956.shtml

最后,提醒大家使用 F5 执行SQL的时候一定要再三检查,DELETE、TRUNCATE 语句使用完后一定要删除或者注释掉。

原文地址:https://www.cnblogs.com/benyang/p/11202747.html