前情提要
客户数据库环境异常,服务启动报错,使用DBM无法连接;
服务器重启后ORACLE SID实例无法启动,抛出错误代码:ORA-03113
报错信息摘要:
java.sql.SQLException: ORA-00257: archiver error. Connect internal only, util freed.
情况分析
根据错误代码及错误描述,能够知道问题原因是数据库归档日志可用空间不足
服务器重启后,数据库实例由于归档日志无法写入,阻塞正常实例运行
通过沟通后了解,由于审计需要开启了Oracle归档模式以便进行双数据库同步备份,归档模式开启时未设置归档日志空间,且数据库运行时间超过一个月。
处理方式
- 查看配置文件tnsname.ora获取真实SID
- 连接oracle服务器,并启动Oracle server
- 命令窗口使用命令
lsnrctl start
启动监听器
- 查看/oracle/diag/rdbms/orcl/orcl/trace/alert_orcl.log查看具体报错信息
- 登录oracle:
sqlplus /nolog
- 装载数据库:
startup mount;
- dba身份连接:
conn / as sysdba
- 查看归档日志:
select * from v$recovery_file_dest;
- 设置归档空间:
alter system set db_recovery_file_dest_size=50G;
- 打开数据库:
alter database open;
之后重启服务正常启动,数据库访问恢复正常
后日谈
后续还应根据具体需求设置归档日志空间定时清理以避免因长时间运行导致空间资源消耗殆尽。