DBAtlas · データベース運用アトラス

ORA-19809: limit exceeded for recovery files(リカバリファイルの制限超過)

Oracle

意味

高速リカバリ領域 (FRA) に割り当てられた領域 (db_recovery_file_dest_size) が満杯。アーカイブログ、フラッシュバックログ、バックアップ用の空きがなくなり、Oracle は新しいリカバリファイルを作成できず、データベースがハングすることがある。

原因

定期的にバックアップ・削除されなかったため FRA にアーカイブログが蓄積した、フラッシュバックログの使用量が増加した、または割り当てサイズが実際のワークロードに対して小さすぎる。ORA-16038 などのアーカイブエラーと同時に発生する。

対処方法

FRA の使用状況を確認: SELECT * FROM v$recovery_file_dest; および SELECT * FROM v$flash_recovery_area_usage; 不要なアーカイブログを RMAN で削除する: DELETE ARCHIVELOG ALL BACKED UP 1 TIMES TO DISK; (Data Guard 環境では、まずスタンバイで適用済みであることを確認する。CONFIGURE ARCHIVELOG DELETION POLICY TO APPLIED ON ALL STANDBY を推奨) または恒久対策としてサイズを増やす: ALTER SYSTEM SET db_recovery_file_dest_size = 50G SCOPE=BOTH; アーカイブログを定期的にバックアップする RMAN ジョブを設定する。

DBAtlas で開く →

同じデータベースの他の項目