Oracle RMAN备份validate验证

rman命令,验证的目的主要是为了检查损坏的块和丢失的文件

验证备份集是不是可以用来做恢复

验证数据文件是否损坏,坏块

RMAN验证有三种方式:

1.validate

RMAN> validate database;

RMAN> validate tablespace users;

RMAN> validate tablespace system;

RMAN> validate datafile 1;

RMAN> validate archivelog all;

RMAN> validate datafile 1 block 10;  #验证数据文件单个数据块block是否损坏

RMAN> validate backupset 28;    #验证备份集

cd /u01/app/oracle/oradata

dbv file=system01.dbf        #验证数据文件是否损坏

#关于检验和损坏块:

db_block_checksum=typical

#用于控制数据库中数据文件和redo文件中的检验和写入

#数据库在正常操作期间为每一个块计算校验和,将其写入磁盘之前存储在块的头部

#当数据库从磁盘中读取块的时候,会重新计算校验和,与之前存储的校验和进行比较,如果补匹配就代表块已经损坏。

#物理损坏和逻辑块损坏:

#1.物理损坏,数据库根本无法识别该块:

#校验和无效,块中全部是0,块的header和footer不匹配

#2.逻辑损坏,块的内容在逻辑上不一致,例如:行片损坏、索引条目损坏

#默认情况下,RMAN不检查逻辑坏块。

RMAN> validate check logical database;

RMAN> backup validate check logical database;

RMAN> backup validate archivelog all;

2.backup...validate

#不生成任何备份

RMAN> backup validate database;

RMAN> backup validate check logical database;

RMAN> backup validate archivelog all;

3.restore...validate

#验证数据库是否能进行恢复

RMAN> restore database validate; 

RMAN> restore datafile 1 validate; 

原文地址:https://www.cnblogs.com/sonnyBag/p/13983593.html