`

delete误删数据,恢复方法

阅读更多

转自http://blog.itpub.net/20976446/viewspace-716109

与作者情况类似,转过来做下标记。

 

由于开发人员在早晨大概在9点左右不小心删除了某张表的一些数据(delete from logmessage where where taskid='6471';),目前急需恢复删除的数据,恢复步骤如下
第一:首先通过大概时间点来查询SCN(将删除时间转换为scn)
SQL> select timestamp_to_scn(to_timestamp('2012-02-13 09:00:00','YYYY-MM-DD HH:MI:SS')) from dual;

TIMESTAMP_TO_SCN(TO_TIMESTAMP(
------------------------------
                      16360271
第二:通过SCN查询被删除的数据(将logmessage表中的scn点的数据取出,然后可以根据这个数据进行还原操作)
SQL> select * from logmessage as of scn 16360271 where taskid='6471';
数据省略写下
10542   6471 20110314_中国_3网测试_市区测试与评估_市区mos及do上传_0314-142146-2.loc           2012-2-10 1 电信CDMA      语音    自动路测     市区    2                    

1 rows selected
第三:确认查询被删除后表中总的有多少数据
SQL> select count(*) from logmessage;

  COUNT(*)
----------
      2515
SQL> select * from logmessage where where taskid='6471';这个查询到并没有taskid='6471'的值在logmessage表中
第四:通过SCN的值来恢复被删除的数据(taskid='6471')
SQL> insert into logmessage  select * from logmessage as of scn 16360271 where taskid='6471';

8 rows inserted
SQL> commit;

Commit complete

第五:确认被恢复的数据
SQL> select count(*) from logmessage;

  COUNT(*)
----------
      2523

 

分享到:
评论

相关推荐

    oracle恢复误删数据

    oracle中数据delete且commit 恢复误删数据

    MySQL执行delete误删除数据恢复

    当误执行了 DELETE 命令删除了数据后,可以考虑以下方法进行数据恢复: 立即停止对数据库的写入操作:一旦发现误删,应立即停止对数据库的写入操作,以免新的数据覆盖被删除的数据。 使用备份:如果你有数据库备份...

    delete误删数据使用SCN号恢复(推荐)

    主要介绍了使用scn号恢复误删数据问题,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下

    oracle误删数据恢复方法小结

    如果用户误删/更新了数据后,作为用户并没有什么直接的方法来进行恢复,他们必须求助DBA来对数据库进行恢复,到了Oracle9i,这一个难堪局面有所改善。Or(www.jb51.net)acle 9i中提供了一项新的技术手段–闪回查询,...

    sqlserver2012及以下版本误删除数据还原

    sqlserver2012及以下版本误删除数据还原 2012版本亲测可用。 2016版本会出现无法连接实例的情况。不清楚是我本地环境问题还是此2014版本软件无法支持sql 2016 后续如果有出新版本,再重新上传

    恢复oracle误删数据

    --闪回到15分钟前 --闪回到某个时间点 --闪回到两天前

    从MSSQL恢复误delete、update的数据,有实例

    从MSSQL恢复误删除(delete)、更新(update)的数据,有实例

    MySQL误操作后快速恢复数据的方法

    比如,delete一张表,忘加限制条件,整张表没了。假如这还是线上环境核心业务数据,那这事就闹大了。误操作后,能快速回滚数据是非常重要的。 传统解法 用全量备份重搭实例,再利用增量binlog备份,恢复到误操作之前...

    Mysql误删数据解决方案及kill语句原理

    使用delete语句误删数据行 使用drop table或者truncate table误删数据表 使用drop database语句误删数据库 使用rm误删mysql整个实例 对于误删行 使用flashback工具闪回,把数据恢复回来。原理是修改binlog的...

    恢复SQLSERVER被误删除数据.doc

    在数据库没有备份的情况下,对数据进行误删除,如何进行数据恢复的demo

    SQL Server 2008数据库误删数据如何进行数据恢复

    SQL Server中误删除数据的恢复本来不是件难事,从事务日志恢复即可。但是,这个恢复需要有两个前提条件: 1. 至少有一个误删除之前的数据库完全备份。 2. 数据库的恢复模式(Recovery mode)是“完整(Full)”。 ...

    MSSQL误删除数据查看工具

    在操作SqlServer时,不当心引起的delete操作,或者delete 的时候没有加时间范围,导致错误的删除了正确的数据,用这个工具,可以查看哪些数据被删除的,在进行恢复操作

    数据恢复利器(免费版)

    4、对误删文件,清空回收站,shift+delete删除的文件有良好的恢复功能(不支持分区,格式化及raw恢复)。 软件特色 1、完全免费 用户可以用它,更新它,并获得免费的技术支持。 2、使用方便 操作容易和简单。仅通过...

    SqlServer2008误操作数据(delete或者update)后恢复数据的方法

    主要介绍了SqlServer2008误删数据(delete或者update)后恢复数据的方法,感兴趣的小伙伴们可以参考一下

    mysql 找回误删表的数据方法(必看)

    有备份的话很简单,只需要生成一个最近备份的数据 然后用mysqlbinlog找回备份时间点之后的数据 再恢复到现网即可。 要是没有备份 可能就会比较麻烦,找回数据的成本也是非常之高的. 下面介绍下 mysqlbinlog找回备份...

    数据恢复工具 Wise Data Recovery 5.1.6.334.zip

    Wise Data Recovery (明智的数据恢复软件)是WiseCleaner出品的一款完全免费的数据恢复工具。它可以恢复已被“永久”删除以及被操作系统标记为自由空间的文件(如珍贵照片,Word、Excel等重要文档,电子邮件,TXT...

    简单好用 专业的数据恢复软件.rar

    所以备一款数据恢复软件是多么的重要啊! 软件简介: 您可以用它来恢复误删的文件,包括:照片、文档、视频……等。另外, 还能恢复安卓手机和平板电脑上误删的文件。不过,好像只支持安卓 4.0 高版本暂不支持。 ...

    都教授数据恢复

    强大的恢复软件,可以恢复误删的文件,文档之类的,shift+delete永久删除的也可恢复

    oracle 9i使用闪回查询恢复数据库误删问题

    如果用户误删/更新了数据后,作为用户并没有什么直接的方法来进行恢复,他们必须求助DBA来对数据库进行恢复,到了Oracle9i,这一个难堪局面有所改善。Oracle 9i中提供了一项新的技术手段–闪回查询,用户使用闪回...

Global site tag (gtag.js) - Google Analytics