DBAtlas · 데이터베이스 운영 아틀라스

ORA-19804: cannot reclaim N bytes disk space from M bytes limit (M바이트 한도에서 N바이트 디스크 공간을 회수할 수 없음)

Oracle

의미

Oracle이 새 파일(아카이브 로그, 백업, flashback 로그)을 위해 Fast Recovery Area(FRA)에 공간을 만들려 했지만, DB_RECOVERY_FILE_DEST_SIZE로 정의된 논리적 한도에 도달해 필요한 공간을 회수할 수 없었다.

원인

FRA 크기(DB_RECOVERY_FILE_DEST_SIZE)는 물리 디스크와 무관한 상한이며, 아카이브 로그, RMAN 백업 또는 flashback 로그가 이를 채웠다. 근본 원인은 보통 아카이브 로그를 정기적으로 백업·삭제하지 않았거나 불필요한 백업을 정리하지 않은 것이다.

해결 방법

FRA 사용량 확인: SELECT * FROM v$recovery_area_usage; 및 SELECT * FROM v$recovery_file_dest; 아카이브 로그를 FRA 외부 대상에 백업하고 삭제하거나(RMAN: BACKUP ARCHIVELOG ALL FORMAT '/backup/arc_%U' DELETE INPUT;), 더 이상 필요 없는 백업을 정리한다(RMAN: DELETE OBSOLETE;). Data Guard 환경에서는 standby에 아직 적용되지 않은 아카이브 로그를 삭제하지 않는다. 영구 조치로 디스크 공간이 있으면 DB_RECOVERY_FILE_DEST_SIZE를 늘린다. Flashback Database가 필요 없다면 비활성화를 고려한다.

DBAtlas에서 열기 →

같은 데이터베이스의 다른 항목