数据库启动过程中报ORA-19809错误,数据库状态陷入MOUNT状态无法OPEN。
SQL> startup;
ORACLE 例程已经启动。
Total System Global Area 612368384 bytes
Fixed Size 1250428 bytes
Variable Size 184552324 bytes
Database Buffers 419430400 bytes
Redo Buffers 7135232 bytes
数据库装载完毕。
ORA-16038: 日志 1 序列号 47 无法归档
ORA-19809: 超出了恢复文件数的限制
ORA-00312: 联机日志 1 线程 1: 'C:\ORADATA\ETL\REDO01.LOG'
错误提示日志无法归档。
当前REDO LOG状态为:
SQL> select group#,sequence#,archived,status from v$log;
GROUP# SEQUENCE# ARC STATUS
---------- ---------- --- ----------------
1 47 NO INACTIVE
3 49 NO CURRENT
2 48 NO INACTIVE
SQL> alter system switch logfile;
alter system switch logfile
*
第 1 行出现错误:
ORA-01109: 数据库未打开
数据库处于MOUNT状态,无法切REDO LOG。
查看当着日志存储位置:
SQL> archive log list;
数据库日志模式 存档模式
自动存档 启用
存档终点 USE_DB_RECOVERY_FILE_DEST
最早的联机日志序列 47
下一个存档日志序列 47
当前日志序列 49
SQL> show parameter recovery
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_recovery_file_dest string C:\oracle\product\10.2.0/flash_recovery_area
db_recovery_file_dest_size big integer 2G
recovery_parallelism integer 0
重新调整FRA大小:
SQL> alter system set db_recovery_file_dest_size=4G;
系统已更改。
SQL> alter database open;
数据库已更改。
数据库重新OPEN
参考:How to Resolve ORA-19809 Limit Exceeded for Recovery Files