oracle提交后恢复之前数据

原创 2018年04月17日 12:25:54

小菜鸟今天不小心update时更新了数据库所有数据,提交后才发现。尴尬

1.首先获取最后一次DML的时间:

select max(ora_rowscn),to_char(scn_to_timestamp(max(ora_rowscn)),'yyyy-mm-dd hh24:mi:ss') from 表名;

2.拷贝一份这张表:

 create table 表名_recove as select * from 表名

 as of timestamp to_timestamp('2018-04-17 12:43:08','yyyy-mm-dd hh24:mi:ss');

3.将拷贝的表的值复制进原来表中就可以啦

delete from 原表
insert into 原表 select * from 原表_recove ;

应该还有更好的办法,请多指教。。

oracle commit提交之后的数据恢复!

网上这种处理还是挺多的,为什么还要自己写一遍呢,纯属做笔记!如果你也是一个oracle新手,刚上路免不了出一些意想不到的错误!比如:不一小心吧测试数据导入到了正式的数据库中!然后也commit了,又不...
  • yangjiabei_0301
  • yangjiabei_0301
  • 2016-11-24 11:26:47
  • 1580

ORACLE数据恢复方法(提交事务也可以)

今天在操作数据库的时候,发现数据操作错误,想要恢复,但是没有用事务,按理说,设置成不默认提交事务,此时所做的各种操作都没有反应到数据库中。这时,你可以rollback事务,撤销所有未提交的修改。不过,...
  • jiajane
  • jiajane
  • 2015-10-20 17:36:07
  • 665

oracle数据update后怎么恢复到以前的数据

为了方便大家自己的解决办法: 1、select * from V$SQL where SQL_TEXT like '%update MAP_OPTCBL_POINT_70 set shape%'...
  • ITdada
  • ITdada
  • 2016-10-06 23:39:15
  • 3282

oracle做了update的误操作该如何恢复之前数据?

第一步:在v$sqlarea 这视图里面找到你操作那条SQL的时间;select r.FIRST_LOAD_TIME,r.* from v$sqlarea r order by r.FIRST_LOA...
  • ccq901027
  • ccq901027
  • 2017-03-29 09:45:18
  • 738

oracle恢复10分钟之前的数据

1.执行 select * from A as of timestamp sysdate-10/1440;       该SQL语会查找出距离现在10分钟之前A表的所有数据。   ...
  • lin304510260
  • lin304510260
  • 2014-03-13 14:18:42
  • 1953

系统重装后,oracle数据库中数据快速恢复

系统重装后,oracle数据库中数据快速恢复
  • lky5387
  • lky5387
  • 2015-05-23 03:23:51
  • 1003

误删oracle表,恢复表结构及数据方法

1、本人是通过drop的方式误删了所有正式库的所有表,瞬间崩溃了; 2、oracle是10g版本,晚上说只有该版本有回收站的概念,这个未去深究过; 3、去回收表中查看下被你误删的表是否还存在? ...
  • qq584852076
  • qq584852076
  • 2013-04-09 23:42:48
  • 3783

在一个修改了数据的事务被提交之前,Oracle进行了以下操作

a) Oracle生成了undo information,undo information包含了事务中各个SQL语句所修改的数据的原始值。 b)Oracle 在SGA的重做日志缓冲区(redo lo...
  • sinat_28678257
  • sinat_28678257
  • 2017-09-20 13:42:28
  • 538

oracle update并commit误操作后,利用闪回方法 flashback可以还原上个时间点的数据

今天在生产环境更新一个菜单的URL时,用update
  • crazyitlhs
  • crazyitlhs
  • 2014-10-16 16:54:30
  • 3297

Oracle 修改数据库提交之后进行回滚

1、 -- 查询你执行update 语句之前的数据 精确到什么时间   select * from 表名 as of timestamp to_timestamp('2017-07-21 17:16...
  • dan521chuang
  • dan521chuang
  • 2017-11-03 09:54:53
  • 1068
收藏助手
不良信息举报
您举报文章:oracle提交后恢复之前数据
举报原因:
原因补充:

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