Question:
You lost the index tablespace in your database. You are not able to use tablespace point-in-time recovery on the index tablespace. What could be the reason for this?
A. The index tablespace contains bitmap indexes.B. The index tablespace contains more than one data file.
C. The index tablespace supports only complete recovery.
D. The index tablespace is not a dictionary-managed tablespace.
E. There is a dependency relationship between a table and its indexes.
Answer:E
Translate:
在数据库中你失去了索引表空间。你不能在索引表空间中使用基于时间点的恢复。这是什么原因造成的?
A.索引表空间中包含位图索引
B.索引表空间中包含不止一个数据文件
C.索引表空间仅支持完全恢复
D.索引表空间不是基于字典管理的表空间
E.表和相应的索引是依存的关系
Notes:
如果索引表空间和数据表空间之间存在关联关系,我们不能在索引表空间出问题的时候单独恢复索引表空间;一般情况下需要定位损坏的索引、以及该索引对应的数据文件、以及该索引关联的其他数据文件,一并进行修复;E选项正确。
注意:恢复集的表空间必须为自包含;
违反自包含表空间集合的常见情况如下:
1> 表空间集合包含有 SYS 方案对象
2> 表空间集合包含了索引所在的表空间,但没有包含索引基表所在的表空间
3> 表空间集合没有包含分区表的所有分区
4> 表空间集合包含了表所在的表空间,但没有包含其 LOB 列所在的表空间
检查自包含方式:
SQL> connect sys/oracle@demo as sysdba
SQL> execute dbms_tts.transport_set_check('user01',true);
SQL> Select * From transport_set_violations;
RMAN可以执行TSPITR,从而在不影响数据库中的其他表空间或其他对象的前提下,方便的将一个或多个表空间的内容还原到过去的某个时间点,TSPITR恢复工具适用于以下情形:
1.在一个逻辑上独立的表空间中,重要表中的行数据受损或被删除;“逻辑上独立”是指其他表空间中的对象与其不存
在索引或父子关系,即自包含,E项不满足。
2.误用DDL更改表空间中的一个或多个表的结构,因此无法使用闪回表来恢复这些表。
3.使用PURGE选项删除了表。
虽然可以使用闪回数据库执行此任务,但闪回数据库有两个缺点。首先,它会回滚数据库中的所有对象(并不限于尝试恢复的表空间)。第二,鉴于表空间的TSPITR窗口追溯到表空间最早的可恢复备份,只有维护闪回日志时才能使用闪回数据库。TSPITR并非是发生所有表空间灾难后的万能救星。例如,不能使用它来恢复已经删除的表空间;另外,如果重命名了表空间,无法将其恢复到重命名之前的时间点。