ITPub博客

首页 > 数据库 > Oracle > ORA-19809:ORA-19804

ORA-19809:ORA-19804

原创 Oracle 作者:sjztianke 时间:2014-02-14 14:33:58 0 删除 编辑

Rac环境下,启动数据库时候提示以下错误:

[grid@RAC1 ~]$ srvctl  start database -d racdb

PRCR-1079 : 无法启动资源 ora.racdb.db

ORA-01034: ORACLE not available

ORA-27101: shared memory realm does not exist

Linux-x86_64 Error: 2: No such file or directory

进程 ID: 0

会话 ID: 0 序列号: 0

ORA-03113: 通信通道的文件结尾

进程 ID: 6598

会话 ID: 125 序列号: 3

CRS-2674: 未能启动 'ora.racdb.db' ( 'rac1' )

ORA-01034: ORACLE not available

ORA-27101: shared memory realm does not exist

Linux-x86_64 Error: 2: No such file or directory

进程 ID: 0

会话 ID: 0 序列号: 0

CRS-2632: 没有更多符合资源 'ora.racdb.db' 的布局策略的服务器来尝试放置该资源

 

 

后考虑通过sqlplus启动数据库,

[oracle@RAC1 ~]$ sqlplus / as sysdba

SQL>startup;

数据库会提示03113错误

ORA-03113: end-of-file on communication channel

 

查看alter日志

[oracle@RAC1 ~]$tail -100  /u01/app/oracle/diag/rdbms/racdb/racdb1/trace/alert_racdb1.log

 

Errors in file /u01/app/oracle/diag/rdbms/racdb/racdb1/trace/racdb1_ora_6118.trc:

ORA-19809: 超出了恢复文件数的限制

ORA-19804: 无法回收 42991616 字节磁盘空间 ( 314572800 限制中)

ARCH: Error 19809 Creating archive log file to '+DATA'

Errors in file /u01/app/oracle/diag/rdbms/racdb/racdb1/trace/racdb1_ora_6118.trc:

ORA-16038: 日志 1 sequence# 75 无法归档

ORA-19809: 超出了恢复文件数的限制

ORA-00312: 联机日志 1 线程 1: '+DATA/racdb/onlinelog/group_1.383.836176535'

ORA-00312: 联机日志 1 线程 1: '+DATA/racdb/onlinelog/group_1.384.836176537'

USER (ospid: 6118): terminating the instance due to error 16038

Wed Feb 12 22:51:24 2014

System state dump is made for local instance

System State dumped to trace file /u01/app/oracle/diag/rdbms/racdb/racdb1/trace/racdb1_diag_5998.trc

Trace dumping is performing id=[cdmp_20140212225124]

Instance terminated by USER, pid = 6118

 

发现数据库无法启动的原因是因为归档日志文件已经满了,由于数据库无法启动,所以需要nomount的方式启动数据库

SQL>startup nomount;

查看实例状态

SQL> select status from v$instance;

STATUS

------------

STARTED

 

然后更改为mount状态

SQL>alter database mount

查看状态

SQL> select status from v$instance;

STATUS

------------

MOUNTED

 

看到限制实例启动起来了,那么我们就可以通过rman工具进行将归档日志处理(注意好备份)

[oracle@RAC1 ~]$ rman target /

 

RMAN> crosscheck backup;

 

RMAN> crosscheck archivelog all;

 

RMAN> delete  expired archivelog all;

 

然后将数据库状态改为open

SQL>alter database open

查看状态

SQL> select status from v$instance;

 

STATUS

------------

OPEN

这样数据库就完全启动起来了

启动之后,通过:

SQL>alter system set db_recovery_file_dest_size =1000m;

将闪回区大小修改即可

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29485488/viewspace-1081405/,如需转载,请注明出处,否则将追究法律责任。

下一篇: 没有了~
请登录后发表评论 登录
全部评论

注册时间:2014-02-14

  • 博文量
    2
  • 访问量
    24617