首页 > 数据库技术 > 详细

Oracle 数据表误删恢复 Flashback

时间:2018-06-20 23:07:38      阅读:213      评论:0      收藏:0      [点我收藏+]

1. 前提条件. recyclebin 参数打开.

 验证参数是否打开:

SHOW PARAMETER RECYCLEBIN

技术分享图片

2. 如果参数没有打开的话 需要打开,并且重启一下数据库方法为

alter system set recyclebin=on scope=spfile;

3. 登录数据库

sqlplus / as sysdba
#关闭数据库
shutdown immediate
#开启数据库
startup

4. 创建表测试

Create table zhaobsh (Test varchar(20));
insert into table zhaobsh values ("zhaobsh");
select * from zhaobsh
drop table zhaobsh

5. 回滚表

flashback TABLE zhaobsh TO BEFORE DROP ;

技术含量比较低 但是 比较有用 如果开启了 recyclebin的话 并且drop 表的时间在 比较短的情况下.

 

6. 回滚到某一时间节点的方法

保证表可以movement

命令

ALTER TABLE zhaobsh ENABLE ROW MOVEMENT;

将表回滚到五分钟之前

flashback table zhaobsh to timestamp systimestamp - interval 5 minute; 

回滚到一个精确的时间节点的语法

FLASHBACK TABLE zhaobsh TO TIMESTAMP TO_TIMESTAMP(2018-06-20 10:04:01 PM,YYYY-MM-DD HH:MI:SS AM)

注意一点 这里的时间是数据库的时间 不是客户端的时间 需要严格匹配 不然结果是不对的.

Oracle 数据表误删恢复 Flashback

原文:https://www.cnblogs.com/jinanxiaolaohu/p/9206366.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!