RMAN修复坏块

来源:这里教程网 时间:2026-03-03 19:39:52 作者:

在查询某表时,提示出现坏块。

在有做 RMAN 备份的情况下

坏块数量多的话,我们可以先把数据库关掉,起到 mount 状态,备份下损坏的数据文件, restore 损坏的数据文件,然后 recover database 或者 recover datafile 5

 

坏块数量少的话,可以用 RMAN 直接去修复坏块。

RMAN> backup validate datafile 5;

SQL> select * from v$database_block_corruption where file#=5;

 

     FILE#     BLOCK#     BLOCKS CORRUPTION_CHANGE# CORRUPTIO

---------- ---------- ---------- ------------------ ---------

         5         34      12767                  0 CORRUPT

 

RMAN> blockrecover datafile 5 block 34 from backupset;

 

Starting recover at 24-AUG-21

using channel ORA_DISK_1

 

 

channel ORA_DISK_1: restoring block(s)

channel ORA_DISK_1: specifying block(s) to restore from backup set

restoring blocks of datafile 00005

channel ORA_DISK_1: reading from backup piece /oracle/rman/orcl_full07078p7m_1_1.bak

channel ORA_DISK_1: piece handle=/oracle/rman/orcl_full07078p7m_1_1.bak tag=TAG20210823T203045

channel ORA_DISK_1: restored block(s) from backup piece 1

channel ORA_DISK_1: block restore complete, elapsed time: 00:00:01

 

starting media recovery

media recovery complete, elapsed time: 00:00:01

 

Finished recover at 24-AUG-21

相关推荐