[Oracle]闪回FlashBack功能的使用

Flashback技术是从Oracle10g开始应用的一项技术,利用它可以查看数据库过去某个时候的数据,或者把数据库恢复到某个时刻的状态,还可以恢复被误删除的表。下面用它恢复被删除的表的应用。

首先,使用下面语句启用回收站的功能:
alter system set recyclebin=on

其次,建表并加入一条数据:
create table test_tb(id number);
insert into test_tb(id) values('1');

接下来,用以下语句删除这张表:
drop table test_tb;

此后,就可以使用以下语句查看被删除的对象:
show recyclebin;

执行后,显示以下内容:
ORIGINAL NAME    RECYCLEBIN NAME                OBJECT TYPE  DROP TIME
---------------- ------------------------------ ------------ -------------------
TEST_TB          BIN$qFK1/UoacDzgQwqZ9pVwPA==$0 TABLE        2011-07-18:06:06:38

采用以下语句即可恢复被删除的表:
flashback table "BIN$qFK1/UoacDzgQwqZ9pVwPA==$0" to before drop;

在用以下语句看看恢复后的效果:
select * from test_tb;

输出如下:
        ID
----------
         1

这说明被删除的表已经恢复。

相关推荐