ORA-19815归档日志磁盘空间占满
客户端连接失败,提示ORA-19815,alert.log有以下提示:
Errors in file /u01/app/oracle/admin/orcl/bdump/orcl_arc0_2734.trc:
ORA-19815: WARNING: db_recovery_file_dest_size of 2147483648 bytes is 100.00% used, and has 0 remaining bytes available.
Wed Jun 24 09:02:21 2020
You have following choices to free up space from flash recovery area:
- Consider changing RMAN RETENTION POLICY. If you are using Data Guard,
then consider changing RMAN ARCHIVELOG DELETION POLICY. - Back up files to tertiary device such as tape using RMAN
BACKUP RECOVERY AREA command. - Add disk space and increase db_recovery_file_dest_size parameter to
reflect the new space. - 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.
查看磁盘空间还有很多剩余空间,是因为默认的归档目标设置为USE_DB_RECOVERY_FILE_DEST,并且flash_recovery_area的最大尺寸设置为了2GB(db_recovery_file_dest_size= 2147483648),可以有多种方法来解决此问题,通过设置RMAN归档保持策略来自动删除过期的日志文件。也可以使用RMAN DELETE来删除日志文件。
比如删除系统时间1天以前的归档日志
1 | RMAN>delete archivelog all completed before 'sysdate-1'; |
如果使用操作系统命令直接删除归档文件,并不能真正释放空间,还需要执行:
1 | $ rman target / |