ORA-19804: cannot reclaim 52428800 bytes disk space from 2147483648 limit

11年前
情况说明:在执行backup database 命令快结束的时候遇到的问题:
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:03
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
 
RMAN-03009: failure of backup command on ORA_DISK_1 channel at 09/01/2011 23:48:03
ORA-19809: limit exceeded for recovery files
ORA-19804: cannot reclaim 52428800 bytes disk space from 2147483648 limit
问题说明:

You have following choices to free up space from flash recovery area:
1. Consider changing RMAN RETENTION POLICY. If you are using Data Guard,
     then consider changing RMAN ARCHIVELOG DELETION POLICY.
2. Back up files to tertiary device such as tape using RMAN
    BACKUP RECOVERY AREA command.
3. Add disk space and increase db_recovery_file_dest_size parameter to
    reflect the new space.
4. Delete unnecessary files using RMAN DELETE command. If an operating
    system command was used to delete files, then use RMAN CROSSCHECK and
    DELETE EXPIRED commands.

问题是在db_recovery_file_dest_size 备份时没有足够的空间造成的

SQL> show parameter db_recover

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_recovery_file_dest                string      /u01/oracle/flash_recovery_are
                                                 a
db_recovery_file_dest_size           big integer 2G
SQL> alter system set db_recovery_file_dest_size=4G scope=spfile;

System altered.
重新启动数据库,使之生效。在进行rman备份的时候就正常了
[oracle@linuxForOra general10g]$ rman target /

Recovery Manager: Release 10.2.0.1.0 - Production on Fri Sep 2 13:58:28 2011

Copyright (c) 1982, 2005, Oracle.  All rights reserved.

connected to target database: GENERAL1 (DBID=4020178142)

RMAN> list backupset;

using target database control file instead of recovery catalog

RMAN> backup database;

Starting backup at 02-SEP-11
allocated channel: ORA_DISK_1
channel ORA_DISK_1: sid=149 devtype=DISK
channel ORA_DISK_1: starting full datafile backupset
channel ORA_DISK_1: specifying datafile(s) in backupset
input datafile fno=00001 name=/u01/oracle/oradata/general10g/system01.dbf
input datafile fno=00003 name=/u01/oracle/oradata/general10g/sysaux01.dbf
input datafile fno=00002 name=/u01/oracle/oradata/general10g/undotbs01.dbf
input datafile fno=00005 name=/u01/oracle/oradata/general10g/example01.dbf
input datafile fno=00004 name=/u01/oracle/oradata/general10g/users01.dbf
channel ORA_DISK_1: starting piece 1 at 02-SEP-11
channel ORA_DISK_1: finished piece 1 at 02-SEP-11
piece handle=/u01/oracle/flash_recovery_area/GENERAL10G/backupset/2011_09_02/o1_mf_nnndf_TAG20110902T135851_760w4wmo_.bkp tag=TAG20110902T135851 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:02:30
channel ORA_DISK_1: starting full datafile backupset
channel ORA_DISK_1: specifying datafile(s) in backupset
including current control file in backupset
including current SPFILE in backupset
channel ORA_DISK_1: starting piece 1 at 02-SEP-11
channel ORA_DISK_1: finished piece 1 at 02-SEP-11
piece handle=/u01/oracle/flash_recovery_area/GENERAL10G/backupset/2011_09_02/o1_mf_ncsnf_TAG20110902T135851_760w9p61_.bkp tag=TAG20110902T135851 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:07
Finished backup at 02-SEP-11

RMAN>

成功使用rman备份!