when recovery database I met a strange problem,my recovery script as follow:

  SET UNTIL TIME 'DEC 25 2013 09:00:00' ;    

but rman report as follow:

Oracle Error: 
ORA-01547: warning: RECOVER succeeded but OPEN RESETLOGS would get error below
ORA-01194: file 1 needs more recovery to be consistent
ORA-01110: data file 1: '/home/u01/app/oracle/oradata/ghsjdb/system01.dbf'

RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of recover command at 12/27/2013 10:46:53
RMAN-06557: unable to restore archived log of thread 1 with sequence 742
RMAN-06558: archived log size of 37788 kb is bigger than available space of 6664 kb

then I check fast recovery area at once

SQL> select SPACE_USED/SPACE_LIMIT from v$recovery_file_dest;


SQL> show parameter recovery_file_dest

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_recovery_file_dest                string      /home/u01/app/oracle/fast_recovery_area
db_recovery_file_dest_size           big integer 20G

there all still 80% free space, is about 20g * 0.8 =16g ,why rman report no available space?


2 Answers 2


that issue was caused due to lack of space in FRA(Flashback recovery area) if configured or the archive log destination.

option 1. Restore the archive log to an alternate location which has space


RMAN> run {
set ARCHIVELOG DESTINATION TO '<new location with sufficient free space>';
recover database until time "to_date('2013-12-25 09:00:00', 'YYYY-MM-DD HH24:MI:SS')";

option 2. Set MAXSIZE limit


RMAN> run {
recover database until time "to_date('2013-12-25 09:00:00', 'YYYY-MM-DD HH24:MI:SS')" delete archivelog maxsize 50 K ; }

You may need to have RMAN check the contents of the FRA, especially if files have been removed from outside RMAN or the database. RMAN maintains it's own list of files that it knows about (in the control file). If files have been removed externally, it's possible that RMAN thinks that the FRA is full.

Try running these commands:

crosscheck archivelog all;
crosscheck backupset;
catalog recovery area;

This tells RMAN to:

  1. Check all the archivelogs it thinks should be there, mark them as EXPIRED if they no longer exist

  2. Check all the backup sets it thinks should be there, mark them as EXPIRED if they no longer exist

  3. Check the FRA for files that it doesn't already know about.

if it marks lots of files as EXPIRED, then delete these from the control file (tell RMAN that they're gone for good) by running:

delete expired backupset;
delete expired archivelog all;

Note that this doesn't delete any files (files marked as EXPIRED are already "missing"), just removes them from RMAN's catalog.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.