Chinaunix首页 | 论坛 | 博客
  • 博客访问: 237596
  • 博文数量: 50
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 533
  • 用 户 组: 普通用户
  • 注册时间: 2015-07-28 21:56
个人简介

活着,寻找生存。

文章分类

全部博文(50)

文章存档

2017年(1)

2016年(20)

2015年(29)

我的朋友

分类: Oracle

2015-11-21 22:45:06

由于周末停电所以把相关的测试数据库都关闭了,但是在启动一套RAC数据库时出现如下错误:

1:启动数据库报错如下:
  

oracle@orarac1 /home/oracle$ srvctl start database -d orarac
 

PRCR-1079 : Failed to start resource ora.orarac.db

CRS-5017: The resource action "ora.orarac.db start" encountered the following error:

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

Process ID: 579

Session ID: 203 Serial number: 1

. For details refer to "(:CLSN00107:)" in "/opt/11.2.0/grid/log/orarac1/agent/crsd/oraagent_oracle/oraagent_oracle.log".

CRS-2674: Start of 'ora.orarac.db' on 'orarac1' failed

CRS-2632: There are no more servers to try to place resource 'ora.orarac.db' on that would satisfy its placement policy

CRS-5017: The resource action "ora.orarac.db start" encountered the following error:

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

Process ID: 2351

Session ID: 203 Serial number: 1

. For details refer to "(:CLSN00107:)" in "/opt/11.2.0/grid/log/orarac2/agent/crsd/oraagent_oracle/oraagent_oracle.log".
 


2:查看alter.log日志:
  

Errors in file /opt/app/oracle/diag/rdbms/orarac/orarac1/trace/orarac1_ora_579.trc:

ORA-19815: WARNING: db_recovery_file_dest_size of 8589934592 bytes is 100.00% used, and has 0 remaining bytes available.

************************************************************************

You have following choices to free up space from recovery area:

1. Consider changing RMAN RETENTION POLICY. If you are using Data Guard,

   then consider changing RMAN ARCHIVELOG DELETION POLICY.

2. Back up files to tertiary device such as tape using RMAN

   BACKUP RECOVERY AREA command.

3. Add disk space and increase db_recovery_file_dest_size parameter to

   reflect the new space.

4. Delete unnecessary files using RMAN DELETE command. If an operating

   system command was used to delete files, then use RMAN CROSSCHECK and

   DELETE EXPIRED commands.

************************************************************************

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

Errors in file /opt/app/oracle/diag/rdbms/orarac/orarac1/trace/orarac1_ora_579.trc:

ORA-16038: log 1 sequence# 265 cannot be archived

ORA-19809: limit exceeded for recovery files

ORA-00312: online log 1 thread 1: '+ORA_DATE/orarac/onlinelog/group_1.261.884436373'

ORA-00312: online log 1 thread 1: '+ORA_FRA/orarac/onlinelog/group_1.257.884436377'

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


从alter.log日志里可以看到 db_recovery_file_dest_size 已经100%,所以我们需要删除些归档,释放db_recovery_file_dest_size。


 

解决如下:
 

   1:通过ASMCMD登入到ASM,删除部分归档日志。
 

   2:将数据库启动到mount状态:
 

oracle@orarac1 /home/oracle$ srvctl start database -d orarac -o mount
 

   3:登入rman,delete 过期的归档文件:
 

oracle@orarac1 /home/oracle$ rman target /
 

Recovery Manager: Release 11.2.0.3.0 - Production on Tue Oct 27 11:07:56 2015

Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.

connected to target database: ORARAC (DBID=1488840336)
 

RMAN>  crosscheck archivelog all;
 

RMAN> list expired archivelog all;
 

RMAN> delete expired archivelog all;
 

RMAN> y
 

RMAN> exit

4:重启数据库:
 

oracle@orarac1 /home/oracle$ srvctl stop database -d orarac  
     

oracle@orarac1 /home/oracle$ srvctl start database -d orarac
 


OK,数据库正常启动,问题解决!

阅读(16246) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~