PROBLEM:

While taking rman backup, it failed with below error ( ORA-19809 & ORA-19804)

RMAN> backup archivelog all;

Starting backup at 26-MAY-17
current log archived
using channel ORA_DISK_1
channel ORA_DISK_1: starting archived log backup set
channel ORA_DISK_1: specifying archived log(s) in backup set
input archived log thread=1 sequence=1942 RECID=1750 STAMP=944758808
input archived log thread=1 sequence=1943 RECID=1751 STAMP=944773254
channel ORA_DISK_1: starting piece 1 at 26-MAY-17
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03009: failure of backup command on ORA_DISK_1 channel at 05/26/2017 11:53:47
ORA-19809: limit exceeded for recovery files          ---------------------------------------- >  ERROR 
ORA-19804: cannot reclaim 882983936 bytes disk space from 5368709120 bytes limit    ----------->  ERROR

SOLUTION:

1. Check the value of db_recovery_file_dest_size:

SQL> show parameter db_recovery

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_recovery_file_dest                string      /archive/TESTDB
db_recovery_file_dest_size           big integer 5G

2. Check the space usage in recovery_dest

SQL> select SPACE_USED/1024/1024/1024 "SPACE_USED(GB)" ,SPACE_LIMIT/1024/1024/1024 "SPACE_LIMIT(GB)" from  v$recovery_file_dest;

SPACE_USED(GB) SPACE_LIMIT(GB)
----------      -----------
4.5                5 

We can see out of 5G, 4.5G is already used. Let’s increase the value of db_recovery_file_dest to a higher value.

3. Increase db_recovery_file_dest

SQL> alter system set db_recovery_file_dest_size=8G;

System altered.

SQL> select SPACE_USED/1024/1024/1024 "SPACE_USED(GB)" ,SPACE_LIMIT/1024/1024/1024 "SPACE_LIMIT(GB)" from  v$recovery_file_dest;

SPACE_USED(GB) SPACE_LIMIT(GB)
-------------- ---------------
    5.31985807               8

Run the rman job again, It will complete successfully.

RMAN> backup archivelog all;

Starting backup at 26-MAY-17
current log archived
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=282 device type=DISK
channel ORA_DISK_1: starting archived log backup set
channel ORA_DISK_1: specifying archived log(s) in backup set
input archived log thread=1 sequence=1942 RECID=1750 STAMP=944758808
input archived log thread=1 sequence=1943 RECID=1751 STAMP=944773254
input archived log thread=1 sequence=1989 RECID=1797 STAMP=944999626
input archived log thread=1 sequence=1990 RECID=1798 STAMP=944999713
channel ORA_DISK_1: starting piece 1 at 26-MAY-17
channel ORA_DISK_1: finished piece 1 at 26-MAY-17
piece handle=/archive/TESTDB/TESTDB/backupset/2017_05_26/o1_mf_annnn_TAG20170526T115514_dlhvcm48_.bkp tag=TAG20170526T115514 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:07
Finished backup at 26-MAY-17

Starting Control File and SPFILE Autobackup at 26-MAY-17
piece handle=/archive/TESTDB/TESTDB/autobackup/2017_05_26/o1_mf_s_944999722_dlhvctjw_.bkp comment=NONE
Finished Control File and SPFILE Autobackup at 26-MAY-17

RMAN