通过odu挖rman备份前和备份后的数据文件,得知rman backup备份的过程,对绝大多数truncate的表的原始数据未正常备份(为什么是绝大多数,我无法给出解释),这里也可以看出rman backup并非是真正意义上的完全物理上复制(和rman copy还是有区别,copy不能完全被取代)
创建模拟环境
代码如下 | 复制代码 |
SQL> select * from v$version; |
rman备份no truncate table 数据文件
代码如下 | 复制代码 |
[oracle@xifenfei ~]$ rman target / |
truncate table 操作
代码如下 | 复制代码 |
[oracle@xifenfei ~]$ sqlplus / as sysdba |
rman备份truncate table 数据文件
代码如下 | 复制代码 |
|
odu挖rman备份前数据文件
代码如下 | 复制代码 |
|
使用rman 备份后数据文件
代码如下 | 复制代码 |
|
odu挖rman还原后数据文件
代码如下 | 复制代码 |
ODU> scan extent tablespace 6 |
rman backup 对于truncate和drop等相关操作的extent到底是怎么处理的,这里通过rman backup 结合odu证明出来,在较新版本的rman中,rman backup 并未完全的备份这些被认为不需要的extent.