暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

ORA-29702: error occurred IN Cluster GROUP Service operation

老杨 2019-03-26
829

问题描述

数据库出现ORA-27300、ORA-27301和ORA-27302错误并最终出现ORA-29702错误,导致数据库实例的崩溃。
数据库版本为10.2.0.4 RAC for HP-UX,详细错误信息为:

Wed Jun 27 04:31:07 2012
Process startup failed, error stack:
Wed Jun 27 04:31:07 2012
Errors IN file /u01/app/oracle/admin/orcl/bdump/orcl2_psp0_1943.trc:
ORA-27300: OS system dependent operation:fork failed WITH STATUS: 11
ORA-27301: OS failure message: Resource temporarily unavailable
ORA-27302: failure occurred at: skgpspawn3
Wed Jun 27 04:31:08 2012
Process J001 died, see its trace file
Wed Jun 27 04:31:08 2012
kkjcre1p: unable TO spawn jobq slave process 
Wed Jun 27 04:31:08 2012
Errors IN file /u01/app/oracle/admin/orcl/bdump/orcl2_cjq0_1965.trc:
Wed Jun 27 04:41:55 2012
Process startup failed, error stack:
Wed Jun 27 04:41:55 2012
Errors IN file /u01/app/oracle/admin/orcl/bdump/orcl2_psp0_1943.trc:
ORA-27300: OS system dependent operation:fork failed WITH STATUS: 11
ORA-27301: OS failure message: Resource temporarily unavailable
ORA-27302: failure occurred at: skgpspawn3
Wed Jun 27 04:41:56 2012
Process q001 died, see its trace file
Wed Jun 27 04:41:56 2012
ksvcreate: Process(q001) creation failed
Wed Jun 27 04:53:16 2012
Process startup failed, error stack:
.
.
.
Errors IN file /u01/app/oracle/admin/orcl/bdump/orcl2_psp0_1943.trc:
ORA-27300: OS system dependent operation:fork failed WITH STATUS: 11
ORA-27301: OS failure message: Resource temporarily unavailable
ORA-27302: failure occurred at: skgpspawn3
Wed Jun 27 05:05:06 2012
Process q001 died, see its trace file
Wed Jun 27 05:05:06 2012
ksvcreate: Process(q001) creation failed
Wed Jun 27 05:13:04 2012
Error: KGXGN aborts the instance (6)
Wed Jun 27 05:13:04 2012
Errors IN file /u01/app/oracle/admin/orcl/bdump/orcl2_lmon_1945.trc:
ORA-29702: error occurred IN Cluster GROUP Service operation
LMON: terminating instance due TO error 29702


专家解答

从status为11以及fork进程报错判断,导致问题的原因是操作系统无法分配进程。
系统dmesg日志出现大量信息:

proc: TABLE IS FULL
proc: TABLE IS FULL
proc: TABLE IS FULL
proc: TABLE IS FULL
proc: TABLE IS FULL
proc: TABLE IS FULL
proc: TABLE IS FULL
proc: TABLE IS FULL
proc: TABLE IS FULL
proc: TABLE IS FULL
proc: TABLE IS FULL
proc: TABLE IS FULL
proc: TABLE IS FULL
proc: TABLE IS FULL

这也证明了导致问题的原因是当前进程数超过了内核参数的设置。
重新设置操作系统上的nproc和maxuprc的值,根据Oracle的安装文档nproc的值至少为4096,而maxuprc的值为nproc*9/10,如果当前进程数量超过设置的值,则根据实际需求重新调整两个值。

最后修改时间:2019-04-14 10:58:22
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论