zoukankan      html  css  js  c++  java
  • Oracle误操作--被提交后的数据回退(闪回)

    由于一时的粗心,在做update操作时,忘记了加where条件,导致全表数据被修改。此类错误实属不该!!特此记录一下!!

    网上搜索Oracle数据回退操作,介绍如下:

    闪回级别 闪回场景 闪回技术 对象依赖   影响数据
    数据库 表截断、逻辑错误、其他多表意外事件 闪回DATABASE 闪回日志、undo
    DROP 删除表 闪回DROP 回收站(recyclebin)
    更新、删除、插入记录 闪回TABLE 还原数据,undo
    查询 当前数据和历史数据对比 闪回QUERY 还原数据,undo
    版本查询 比较行版本 闪回Version Query 还原数据,undo
    事务查询 比较 闪回Transaction Query 还原数据,undo
    归档 DDL、DML 闪回Archive 归档日志
             

    闪回执行步骤:

    1.查询最近更新数据之前的数据(以便确定是不是Commit之前的数据)

      时间是在最后更新之前的时间,既未做updata操作之前的时间

    select * from T_PRODUCT as of timestamp to_timestamp('2019-09-05 11:10:00', 'yyyy-mm-dd hh24:mi:ss');

    2.进行闪回操作前需要开启行移动功能

    alter table T_PRODUCT enable row movement;

    3.执行闪回语句

     flashback table T_PRODUCT to timestamp TO_TIMESTAMP('2019-09-05 11:10:00','yyyy-mm-dd hh24:mi:ss');

    然后数据就回退到更新操作之前了。

  • 相关阅读:
    写给所有的IT民工们
    如何不重启系统加载.SYS文件
    六十八个经典故事
    利用C#重启远程计算机
    无为无不为
    男人心里到底藏着哪些秘密?
    Microsoft好员工的十个标准
    javascript版的日期输入控件
    书写NDIS过滤钩子驱动实现ip包过滤
    男人25岁前的忠告#必阅
  • 原文地址:https://www.cnblogs.com/JohnsonLiu/p/11465973.html
Copyright © 2011-2022 走看看