Oracle数据回滚的全过程


本文整理自网络,侵删。

前言

最近在修复一个比较老的项目报表的bug的时候,因为对该项目不太熟悉,导致生产环境数据修改有误,于是求助导师帮忙回滚数据,现学习一下Oralce数据回滚以备不时之需。

查看某个时间点的表的数据

select * from 表名  as of timestamp to_timestamp('2019-04-15 22:00:38', 'yyyy-mm-dd hh24:mi:ss');

开启闪回,如果不开启无法进行闪回

alter table 表名 enable row movement;

关闭闪回,回滚数据之后需要进行关闭

alter table 表名 disable row movement;

闪回表数据到某个时间点

flashback table 表名 to timestamp TO_TIMESTAMP('2019-04-15 22:00:38', 'yyyy-mm-dd hh24:mi:ss');

drop表

drop table 表名;

查询数据库回收站记录

select object_name,original_name, type from user_recyclebin;

查询被删除的表对象

上面的object_name便是这里被删除的表在数据库回收站中的临时表名BIN$djh3J69WQfGWda1D76/9NA==$0

select * from "BIN$djh3J69WQfGWda1D76/9NA==$0"; 

闪回恢复被删除的表对象

FLASHBACK TABLE 表名 TO BEFORE DROP;

查看 DELETE 及 UPDATE 操作修改的数据

SELECT *
FROM 表名 AS OF TIMESTAMP  to_timestamp('2019-04-16 21:43:38', 'yyyy-mm-dd hh24:mi:ss')
MINUS
SELECT *
FROM 表名;

恢复 DELETE 及 UPDATE 操作修改的数据

将恢复 表至 2019-04-16 21:43:38 时点,恢复数据为因 DELETE 及 UPDATE 操作修改的数据。

阅读剩余部分

相关阅读 >>

oracle误删数据表还原的二种方法(oracle还原)

oracle数据库导入导出命令使用方法

oracle与mysql自动增长列(id)的区别

oracle—sql技巧之(一)连续记录查询sql案例测试

oracle创建表空间语句

oracle中nextval案例详解

mysql和oracle的区别小结(功能性能、选择、使用它们时的sql等对比)

oracle怎么修改数据库密码

燕十八oracle视频的资源(源码课件)分享

oracle多表简单查询实例代码

更多相关阅读请进入《oracle》频道 >>


数据库系统概念 第6版
书籍

数据库系统概念 第6版

机械工业出版社

本书主要讲述了数据模型、基于对象的数据库和XML、数据存储和查询、事务管理、体系结构等方面的内容。



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...