RAC 实例不能启动 手工启动实例报错 ORA-03113 end-of-file on communication channel

本文主要是介绍RAC 实例不能启动 手工启动实例报错 ORA-03113 end-of-file on communication channel,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

 

       前几天弄好的一个Oracle 10gR2 RAC. 刚才启动的时候实例无法启动,开始以为是反应慢,就等了一会。 过去了N长时间还没有启动。 觉得不太对劲。

 

[root@rac1 bin]# ./crs_stat -t

Name           Type           Target    State     Host       

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

ora.orcl.db    application    ONLINE    OFFLINE               

ora....oltp.cs application    ONLINE    OFFLINE              

ora....cl1.srv application    ONLINE    OFFLINE              

ora....cl2.srv application    ONLINE    OFFLINE              

ora....l1.inst application    ONLINE    OFFLINE               

ora....l2.inst application    ONLINE    OFFLINE              

ora....SM1.asm application    ONLINE    ONLINE    rac1       

ora....C1.lsnr application    ONLINE    ONLINE    rac1       

ora.rac1.gsd   application    ONLINE    ONLINE    rac1        

ora.rac1.ons   application    ONLINE    ONLINE    rac1       

ora.rac1.vip   application    ONLINE    ONLINE    rac1       

ora....SM2.asm application    ONLINE    ONLINE    rac2       

ora....C2.lsnr application    ONLINE    ONLINE    rac2       

ora.rac2.gsd   application    ONLINE    ONLINE    rac2       

ora.rac2.ons   application    ONLINE    ONLINE    rac2       

ora.rac2.vip   application    ONLINE    ONLINE    rac2       

 

手动用srvctl 命令启动也报错:

[root@rac1 bin]# ./srvctl start instance -d orcl -i orcl1

PRKP-1001 : Error starting instance orcl1 on node rac1

CRS-0215: Could not start resource 'ora.orcl.orcl1.inst'.

 

       因为下午在这个实例上重建了OCRVoting disk 所以开始以为是这个过程导致的。 在那用ocrdump命令将OCR dump出来,然后查看。 相关resource的属性没有问题。

 

想起来以前看到的一个错误,srvctl 不能启动, 但是sqlplus能启动。 参考:

 

ORA-16032 Can not Start Instance via srvctl but via sqlplus is fine [ID 1062071.1]

http://blog.csdn.net/tianlesoftware/archive/2010/11/19/6020432.aspx

 

 

就尝试用sqlplus 启动了:

[oracle@rac1 dbs]$ export ORACLE_SID=orcl1

[oracle@rac1 dbs]$ sqlplus /nolog

 

SQL*Plus: Release 10.2.0.1.0 - Production on Thu Dec 2 19:18:22 2010

 

Copyright (c) 1982, 2005, Oracle.  All rights reserved.

 

SQL> conn / as sysdba

Connected to an idle instance.

SQL> startup

ORACLE instance started.

 

Total System Global Area  222298112 bytes

Fixed Size                  1218628 bytes

Variable Size             125831100 bytes

Database Buffers           92274688 bytes

Redo Buffers                2973696 bytes

Database mounted.

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

 

mount 之后直接挂掉,郁闷。 所以去看了一下alert log

 

Errors in file /u01/app/oracle/admin/orcl/udump/orcl1_ora_14889.trc:

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

ORA-00254: error in archive control string ''

ORA-00312: online log 1 thread 1: '+DATA/orcl/onlinelog/group_1.261.736599263'

ORA-00312: online log 1 thread 1: '+FRA/orcl/onlinelog/group_1.257.736599275'

ORA-15173: entry 'archivelog' does not exist in directory '/'

USER: terminating instance due to error 16038

 

看到以上信息,小兴奋了一下。 因为找到原因了。 将数据库启动到mount 状态。 确认下归档目录:

 

SQL> startup mount;

ORACLE instance started.

Total System Global Area  222298112 bytes

Fixed Size                  1218628 bytes

Variable Size              96470972 bytes

Database Buffers          121634816 bytes

Redo Buffers                2973696 bytes

Database mounted.

SQL> show parameter log_    

 

NAME                                 TYPE        VALUE

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

 

log_archive_dest_1           string      LOCATION=+FRA/archivelog/orcl/

...

 

RAC的归档放在了ASM上。 所以到ASM 上看了一下,确实没有后面的几个目录。 asmcmd连上ASM. DATAFRA目录下分别才创建了archivelog/orcl 这个目录:

 

[oracle@rac1 bdump]$ asmcmd

ASMCMD> ls

DATA/

FRA/

ASMCMD> cd DATA/

ASMCMD> ls

ORCL/

ASMCMD> mkdir archivelog

ASMCMD> cd archivelog

ASMCMD> ls

ASMCMD> mkdir orcl

ASMCMD>cd ../..

ASMCMD> cd FRA

ASMCMD> ls

ORCL/

ASMCMD> mkdir archivelog

ASMCMD> ls

ORCL/

archivelog/

ASMCMD> cd archivelog

ASMCMD> ls

ASMCMD> mkdir orcl

 

在将mount的实例open:

SQL> alter database open;

Database altered.

 

成功open.  srvctl 启动了另一个实例:

[oracle@rac1 bin]$ ./srvctl start instance -d orcl -i orcl1

 

查看进程:

[oracle@rac1 bin]$ ./crs_stat -t

Name           Type           Target    State     Host       

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

ora.orcl.db    application    ONLINE    ONLINE    rac1       

ora....oltp.cs application    ONLINE    ONLINE    rac1       

ora....cl1.srv application    ONLINE    ONLINE    rac1       

ora....cl2.srv application    ONLINE    ONLINE    rac2       

ora....l1.inst application    ONLINE    ONLINE    rac1       

ora....l2.inst application    ONLINE    ONLINE    rac2       

ora....SM1.asm application    ONLINE    ONLINE    rac1       

ora....C1.lsnr application    ONLINE    ONLINE    rac1       

ora.rac1.gsd   application    ONLINE    ONLINE    rac1       

ora.rac1.ons   application    ONLINE    ONLINE    rac1       

ora.rac1.vip   application    ONLINE    ONLINE    rac1       

ora....SM2.asm application    ONLINE    ONLINE    rac2       

ora....C2.lsnr application    ONLINE    ONLINE    rac2       

ora.rac2.gsd   application    ONLINE    ONLINE    rac2       

ora.rac2.ons   application    ONLINE    ONLINE    rac2       

ora.rac2.vip   application    ONLINE    ONLINE    rac2    

 

成功启动。

 

小结:

       官网的那个是因为使用了环境变量导致的。 我的这个是因为归档目录不存在导致的。 归档设置虽然是个小问题,影响确是很大的。

 

 

 

 

 

 

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

QQ:492913789

Email:ahdba@qq.com

Blog: http://www.cndba.cn/dave 


网上资源: http://tianlesoftware.download.csdn.net

相关视频:http://blog.csdn.net/tianlesoftware/archive/2009/11/27/4886500.aspx

DBA1 群:62697716(); DBA2 群:62697977()

DBA3 群:62697850   DBA 超级群:63306533;    

聊天 群:40132017

--加群需要在备注说明Oracle表空间和数据文件的关系,否则拒绝申请

这篇关于RAC 实例不能启动 手工启动实例报错 ORA-03113 end-of-file on communication channel的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/874703

相关文章

MySQL中的LENGTH()函数用法详解与实例分析

《MySQL中的LENGTH()函数用法详解与实例分析》MySQLLENGTH()函数用于计算字符串的字节长度,区别于CHAR_LENGTH()的字符长度,适用于多字节字符集(如UTF-8)的数据验证... 目录1. LENGTH()函数的基本语法2. LENGTH()函数的返回值2.1 示例1:计算字符串

Android kotlin中 Channel 和 Flow 的区别和选择使用场景分析

《Androidkotlin中Channel和Flow的区别和选择使用场景分析》Kotlin协程中,Flow是冷数据流,按需触发,适合响应式数据处理;Channel是热数据流,持续发送,支持... 目录一、基本概念界定FlowChannel二、核心特性对比数据生产触发条件生产与消费的关系背压处理机制生命周期

java向微信服务号发送消息的完整步骤实例

《java向微信服务号发送消息的完整步骤实例》:本文主要介绍java向微信服务号发送消息的相关资料,包括申请测试号获取appID/appsecret、关注公众号获取openID、配置消息模板及代码... 目录步骤1. 申请测试系统2. 公众号账号信息3. 关注测试号二维码4. 消息模板接口5. Java测试

MySQL数据库的内嵌函数和联合查询实例代码

《MySQL数据库的内嵌函数和联合查询实例代码》联合查询是一种将多个查询结果组合在一起的方法,通常使用UNION、UNIONALL、INTERSECT和EXCEPT关键字,下面:本文主要介绍MyS... 目录一.数据库的内嵌函数1.1聚合函数COUNT([DISTINCT] expr)SUM([DISTIN

nginx启动命令和默认配置文件的使用

《nginx启动命令和默认配置文件的使用》:本文主要介绍nginx启动命令和默认配置文件的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录常见命令nginx.conf配置文件location匹配规则图片服务器总结常见命令# 默认配置文件启动./nginx

qt5cored.dll报错怎么解决? 电脑qt5cored.dll文件丢失修复技巧

《qt5cored.dll报错怎么解决?电脑qt5cored.dll文件丢失修复技巧》在进行软件安装或运行程序时,有时会遇到由于找不到qt5core.dll,无法继续执行代码,这个问题可能是由于该文... 遇到qt5cored.dll文件错误时,可能会导致基于 Qt 开发的应用程序无法正常运行或启动。这种错

Python实例题之pygame开发打飞机游戏实例代码

《Python实例题之pygame开发打飞机游戏实例代码》对于python的学习者,能够写出一个飞机大战的程序代码,是不是感觉到非常的开心,:本文主要介绍Python实例题之pygame开发打飞机... 目录题目pygame-aircraft-game使用 Pygame 开发的打飞机游戏脚本代码解释初始化部

Nexus安装和启动的实现教程

《Nexus安装和启动的实现教程》:本文主要介绍Nexus安装和启动的实现教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、Nexus下载二、Nexus安装和启动三、关闭Nexus总结一、Nexus下载官方下载链接:DownloadWindows系统根

Java中实现线程的创建和启动的方法

《Java中实现线程的创建和启动的方法》在Java中,实现线程的创建和启动是两个不同但紧密相关的概念,理解为什么要启动线程(调用start()方法)而非直接调用run()方法,是掌握多线程编程的关键,... 目录1. 线程的生命周期2. start() vs run() 的本质区别3. 为什么必须通过 st

Oracle修改端口号之后无法启动的解决方案

《Oracle修改端口号之后无法启动的解决方案》Oracle数据库更改端口后出现监听器无法启动的问题确实较为常见,但并非必然发生,这一问题通常源于​​配置错误或环境冲突​​,而非端口修改本身,以下是系... 目录一、问题根源分析​​​二、保姆级解决方案​​​​步骤1:修正监听器配置文件 (listener.