本文测试当表空间不足时,回收站中的内容将会被删除。
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 --
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/