【Flashback】表空间不足时将会清理回收站内容释放空间

  本文测试当表空间不足时,回收站中的内容将会被删除。

1.创建大小为1M的表空间TBS_SEC_D
sys@ora10g> create tablespace TBS_SEC_D datafile '/oracle/ora10gR2/oradata/ora10g/tbs_sec_d_01.dbf' size 1m;

Tablespace created.

2.创建SEC用户并授权
sys@ora10g> create user sec identified by sec default tablespace tbs_sec_d;

User created.

sys@ora10g> grant connect,resource to sec;

Grant succeeded.

3.模拟表被删除
sys@ora10g> conn sec/sec
Connected.
sec@ora10g> create table t as select * from all_objects;

Table created.

sec@ora10g> drop table t;

Table dropped.

4.查看回收站中的内容
sec @ora10g > show recyclebin;
ORIGINAL NAME    RECYCLEBIN NAME                OBJECT TYPE  DROP TIME
---------------- ------------------------------ ------------ -------------------
T                BIN$pp2oPQTMClXgQMKQt8ByAQ==$0 TABLE        2011-06-26:21:46:09

此时回收站中存放了T表的删除数据。回收站中只要存在表数据,便可以使用闪回技术对表T进行恢复。

5.模拟表空间不足
1)创建空表T1
sec @ora10g > create table t1 as select * from all_objects where 0=1;

Table created.

2)查看回收站中的信息
sec @ora10g > show recyclebin;
ORIGINAL NAME    RECYCLEBIN NAME                OBJECT TYPE  DROP TIME
---------------- ------------------------------ ------------ -------------------
T                BIN$pp2oPQTMClXgQMKQt8ByAQ==$0 TABLE        2011-06-26:21:46:09

由于我们创建的是空表T1,并没有占用表空间TBS_SEC_D空间,因此回收站中的信息并没有被挤占。

3)尝试向T1表中插入数据
sec @ora10g > insert into t1 select * from all_objects;

4370 rows created.

4)再次查看回收站中的内容
sec @ora10g > show recyclebin;

此处将没有信息返回,说明,回收站中的信息已经被挤占并清空。此后T表将不能通过简单的闪回技术进行恢复。

6.小结
  当回收站被清空,或者存放回收站信息的表空间空间不足时,回收站中的信息都会被删除。
  这里提醒大家的是:请尽量保证表空间存在充足的可用空间,防止回收站信息被删除带给我们的恢复困难。

Good luck.

secooler
11.06.26

-- The End --

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/519536/viewspace-700782/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/519536/viewspace-700782/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值