11g rman blockrecover 时的新特性:
注意:10g时的blockrecover命令被废弃,但是依然支持。
Rman> Recover datafile <fileno> block <block number reported corrupt>;
Rman> Recover datafile <fileno> block <block number > to <block number>;
Rman> recover corruption list ;--->将V$DATABASE_BLOCK_CORRUPTION 中的坏块都recover掉。
Rman> Recover tablespace <name> dba <integer value> ;
Rman> Recover tablespace testing dba 29360329 ;
举例:
SQL>SELECT DBMS_UTILITY.MAKE_DATA_BLOCK_ADDRESS(<file#>,<block#>) FROM DUAL;
SQL> SELECT DBMS_UTILITY.MAKE_DATA_BLOCK_ADDRESS(7,201) FROM DUAL;
DBMS_UTILITY.MAKE_DATA_BLOCK_ADDRESS(7,201)
-------------------------------------------
29360329
Rman> Recover tablespace <name> dba <integer value> ;
Rman> Recover tablespace testing dba 29360329 ;
而10g时,只能:
RMAN> blockrecover datafile 5 block 20; --->只能用这个语法!
Starting blockrecover at 17-JUN-15
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: sid=1068 devtype=DISK
starting media recovery
media recovery complete, elapsed time: 00:00:00
Finished blockrecover at 17-JUN-15
RMAN>