发布网友
共3个回答
热心网友
有2种通用的办法:
1 blockrecover
2 dbms_repair
注意:第二种办法会丢弃坏块中的所有数据。
所以事先确定逻辑坏块中是否有数据,数据是否有备份。
热心网友
Oracle DBA神器:PRM灾难恢复工具,Schema级别数据恢复。PRM For Oracle Database – schema级别oracle数据库数据恢复特性 ,PRM即ParnassusData Recovery Manager是企业级别Oracle数据库灾难恢复工具。PRM可以在无备份的情况下恢复被truncated掉的表,也可以恢复无法打开的Oracle数据库(Alter Database Open失败)中的数据。 PRM是图形化增强版的Oracle DUL工具,同时具备很多Oracle DUL不具备的特性
热心网友
前提:必须有rman的全备份
首先确定坏块:SQL> select * from v$database_block_corruption
然后:
rman target / nocatalog
RMAN> recover corruption list
恢复:BLOCKRECOVER DATAFILE n BLOCK m DATAFILE n BLOCK m;