利用SQL日志找回丢失的数据

原创 2006年06月20日 18:11:00

这几天碰到了我一生中最痛苦的事情,在对一个表中的一列数据进行update时,后来少带了个where语句,造成整列数据全部更新,也就是整列数据全部丢失,而以前又没有对次数据库进行备份,万分悲痛之下急忙上网找工具.

一共找到3个:

 Log Explorer 

 Apex SQL Log 
 
SQL Log Rescue 

首先说第一个Log Explorer,第一个可能很多人都用过,我下载下来马上连上数据库,点view log,发现了很多条操作记录,不过不管怎么调,那日志的时间都是6月12日到6月16日,我不知道我的数据库日志为什么只从6月12日开始,请高手解释一下.言归正传,我仔细看那些操作的记录,有很多改动的数据都能看到,可是我改动的那列是ntext类型,数据无法看到,使用 undo和redo都无法找到我那ntext类型的数据,即使使用"export log records"和"recovery"里面的操作也无法找到丢失的ntext数据.万分悲痛之下只好找第二个了

第二个Apex SQL Log,和Log Explorer 差不多,看到的日志记录里没发现找到ntext的数据,后来使用"recovery wizard"里面选择恢复数据,它生成的sql里面的我修改的ntext字段全是0x000...这类二进制数据,原来ntext类型的存储和其他数据类型存储的方式不同,在数据库中ntext存储的只是存储ntext内容的指针,我试着用readtext 读取其中它给我一个指针的值,可惜读不到,进www.apexsql.com/中去咨询,原来这个软件在这个地方有个bug,当恢复ntext类型的时候,只给出一个指针是有错误的,根本无法恢复,他们说在下一个版本中才解决这个问题,没办法了.

第三个SQL Log Rescue,这个确实让我兴奋了一下,因为当我连上数据库读取日志时,发现了一些我改动过之前的ntext类型的值已经改动之后的值,他在改动的记录上还对这两个ntext类型的值进行对比,不过高兴没多久,我才发现我原来只可以找到几条这样的值,进官方主页一看,原来才知道,他有值是因为我update这条记录在前面的日志中还有insert的记录,可是我的日志的时间只有6月12日到6月16日的,前面的日志我不知道为什么会没有了,所以我只能找回几条记录.

总结:个人觉得Log Explorer让我这次没一点收获,Apex SQL Log 至少让我知道了我修改的ntext类型存储的地方,期待他下一个版本能找到,SQL Log Rescue让我恢复了几条数据,可惜日志不全,如果日志全的话完全全部恢复,希望高手替我解释一下.

下班前匆忙写的,很潦草,见谅

Oracle恢复误删的数据或表,解除锁定SQL或table

Oracle恢复误删的数据或表,解除锁定SQL或table    转载于: http://renjie120.iteye.com/  注释:本文转自网络,转载请注明 注意:数据...
  • anya
  • anya
  • 2015年08月25日 09:01
  • 2058

SQL SERVER 2008R2从日志中恢复Delete数据

【用户单位】     北京某公司  【数据恢复故障描述】     用户有两个SQLSERVER 2008R2数据库,其中一个是测试库,另一个是生产库,DBA在做操作,误把生产库中的一张表做了Delet...
  • mycshomes
  • mycshomes
  • 2014年03月28日 21:45
  • 1824

三星手机丢失了数据怎么找回

三星手机丢失了数据怎么找回 现在的智能手机很看重娱乐功能,娱乐功能越强人们有喜欢手机的屏幕大,作为大屏幕高性能的只能手机,三星手机是当之无愧的代表。但是再好的手机也是一个存储设备,里面的资料就跟...
  • u014388160
  • u014388160
  • 2014年04月04日 15:31
  • 1237

网吧计费系统数据库修复/网吧收银系统数据库恢复

【数据恢复故障描述】 网吧管理人员在5月23日凌晨一点多钟准备维护网吧管理系统,把D盘软件安装目录下的database目录整个的复制了出来,为了安全起见共复制了两份,然后就轻车熟路的重装了网吧管理系...
  • tongyuekeji123
  • tongyuekeji123
  • 2016年05月25日 15:23
  • 761

git 找回丢失的commit

From : http://dmouse.iteye.com/blog/1797267 git 的错误操作,导致丢失了重要的commit,真是痛不欲生;  最后通过git神器终于找回了丢失...
  • hh2000
  • hh2000
  • 2014年12月31日 20:15
  • 5232

手机数据丢失了还能否找回

手机数据丢失了还能否找回 手机数据恢复一度是迷惑我们的难题,很多人删了别人的电话号码又想找回,或许是删了QQ的聊天记录什么的,想找回但是一贯没有找到好的方法,不过现在跟着手机数据恢复的技术不...
  • tiandunyx
  • tiandunyx
  • 2014年09月01日 11:12
  • 388

SQLServer 2008以上误操作数据库恢复方法——日志尾部备份

转自http://blog.csdn.net/dba_huangzj/article/details/8491327 原文出处:http://blog.csdn.net/dba_huangz...
  • peng_bin1989
  • peng_bin1989
  • 2016年07月19日 10:56
  • 844

硬盘分区后丢失的数据怎么找回

硬盘分区后丢失的数据怎么找回 趁着网店搞活动,我入手了一款新的硬盘,但是因为容量太大,我就行给他分区一下,以免以后存放过多文件的时候不宜查找。但是因为我的操作错误,在分区结束后,我发现我之前存在...
  • wanan0201
  • wanan0201
  • 2014年04月30日 15:36
  • 265

git找到丢失的commit

从Git仓库中恢复已删除的分支、文件或丢失的commit [日期:2014-09-27] 来源:Linux社区  作者:Linux [字体:大 中 小]   在使用Git的过程...
  • coder_jack
  • coder_jack
  • 2016年04月13日 18:16
  • 1721

恢复SQLSERVER被误删除的数据

曾经想实现Log Explorer for SQL Server的功能,利用ldf里面的日志来还原误删除的数据 这里有一篇文章做到了,不过似乎不是所有的数据类型都支持 以下为译文:http://rar...
  • qq380107165
  • qq380107165
  • 2015年04月29日 15:49
  • 5780
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:利用SQL日志找回丢失的数据
举报原因:
原因补充:

(最多只允许输入30个字)