美文网首页IT菜鸟园地
Oracle:误删除数据回退

Oracle:误删除数据回退

作者: 疯狂的码字员 | 来源:发表于2022-02-09 16:08 被阅读0次

         Oracle数据库在开启归档模式下,如何回退由delete、update等误操作导致的数据逻辑删除、修改,以下闪回方式可进行单张数据库表指定时间点批量回滚,具体步骤如下:

    (1)查询SQL执行记录

            select * from v$sqlarea a where a.SQL_TEXT like '%表名%';

    (2)启用行移动功能

           alter table 表名 enable row movement;

    (3)查询操作前数据

           select count(*) from 表名 as of timestamp to_timestamp('2022-01-01 09:28:00','yyyy-mm-dd hh24:mi:ss') ;

    (4)执行闪回,恢复数据:

          flashback table 表名 to timestamp to_timestamp('2022-01-01 09:28:00','yyyy-mm-dd hh24:mi:ss');

    (5)关闭行移动功能

          alter table 表名 disable row movement;

    (6)解除主表约束,以执行回退:

           A、主键失效:alter table table_name disable primary key cascade;

          B、主键生效:alter table table_name enable primary key;

    相关文章

      网友评论

        本文标题:Oracle:误删除数据回退

        本文链接:https://www.haomeiwen.com/subject/tsgwkrtx.html