问题表现:
连接数据库启动报错,ORA-03113,
查看详细的alert日志发现更多报错,如下
ORA-19809: 超出了恢复文件数的限制
ORA-19804: 无法回收 209715200 字节磁盘空间 (从 19368247296 字节限制中)
ORA-16038: ?? 2 sequence# 154 ????
ORA-19809: ???????????
ORA-00312: ???? 2 ?? 1: '+DATA/ORCL/ONLINELOG/group_2.259.980678623'
ORA-00312: ???? 2 ?? 1: '+FRA/ORCL/ONLINELOG/group_2.258.980678625'
问题处理:
百度到的解决方式:
首先将数据库启动到mount状态
SQL> startup mount;
ORACLE 例程已经启动。 Total System Global Area bytes
Fixed Size bytes
Variable Size bytes
Database Buffers bytes
Redo Buffers bytes
数据库装载完毕。
查看日志组信息
SQL> select group#,sequence#,archived,status from v$log; GROUP# SEQUENCE# ARC STATUS
---------- ---------- --- ----------------
NO CURRENT
NO INACTIVE
NO CURRENT
YES INACTIVE
组1处于非当前未活跃状态,并且没有处于归档,更改组1的状态
SQL> alter database clear unarchived logfile group ; 数据库已更改。 SQL> select group#,sequence#,archived,status from v$log; GROUP# SEQUENCE# ARC STATUS
---------- ---------- --- ----------------
YES UNUSED
NO CURRENT
NO CURRENT
YES INACTIVE SQL> alter database open; 数据库已更改。
数据库起来了,但是其中的原理还不清晰......