码迷,mamicode.com
首页 > 数据库 > 详细

Oracle 数据表误删恢复 Flashback

时间:2018-06-21 00:08:57      阅读:192      评论:0      收藏:0      [点我收藏+]

标签:oracle   set   har   SQ   需要   参数   spfile   span   9.png   

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

标签:oracle   set   har   SQ   需要   参数   spfile   span   9.png   

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

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!