ORA-00445: 后台进程 &q…

AUD: Audit Commit Delay exceeded, written a copy to OS Audit Trail
Wed Oct 19 18:40:07 2011
Errors in file /oracle/prod/db/diag/rdbmstrace/PCBMES_mmon_30347.trc  (incident=284254):
ORA-00445: 后台进程 "m000" 在 120 秒之后仍没有启动
Incident details in: /oracle/prod/db/diag/rdbmsincident/incdir_284254/****_mmon_30347_i284254.trc
Wed Oct 19 18:40:14 2011
Trace dumping is performing id=[cdmp_20111019184014]
Wed Oct 19 18:40:43 2011

WARNING: inbound connection timed out (ORA-3136)
Wed Oct 19 19:16:54 2011
Errors in file /oracle/prod/db/diag/rdbms/prod/prod/trace/prod_cjq0_30508.trc  (incident=284388):
ORA-00445: 后台进程 "J003" 在 120 秒之后仍没有启动
Incident details in: /oracle/prod/db/diag/rdbms/prod/prod/incident/incdir_284388/prod_cjq0_30508_i284388.trc
kkjcre1p: unable to spawn jobq slave process
Errors in file /oracle/prod/db/diag/rdbms/prod/prod/trace/prod_cjq0_30508.trc:
Wed Oct 19 19:16:57 2011
Trace dumping is performing id=[cdmp_20111019191657]
Wed Oct 19 19:16:59 2011

 

 

 

 

In this Document

Symptoms
Changes
Cause
Solution

Applies to:

Oracle Server - Enterprise Edition - Version 11.2.0.1 to 11.2.0.3 [Release 11.2]
IBM: Linux on System z

Symptoms

Random errors are see in the alert log relating to spawning of processes such as:

@ Checked for relevance on 17th Jan 2012
ORA-00445: background process "m001" did not start after 120 seconds
Incident details in: /opt/u01/app/oracle/diag/rdbms/incident/incdir_3721/db1_mmon_7417_i3721.trc
ERROR: Unable to normalize symbol name for the following short stack (at offset 2):
Tue Jun 21 03:03:06 2011
ORA-00445: background process "J003" did not start after 120 seconds


or

Waited for process W002 to initialize for 60 seconds



The system appears to be running very slowly and defunct processes can appear.

Changes

REDHAT 5 kernel 2.6.18-194.el5 #1 SMP Tue Mar 16
Oracle 11.2.0.2 Single Instance
IBM: Linux on System z

Cause

Recent linux kernels have a feature called Address Space Layout Randomization (ASLR).
ASLR  is a feature that is activated by default on some of the newer linux distributions.
It is designed to load shared memory objects in random addresses.
In Oracle, multiple processes map a shared memory object at the same address across the processes.

With ASLR turned on Oracle cannot guarantee the availability of this shared memory address.
This conflict in the address space means that a process trying to attach a shared memory object to a specific address may not be able to do so, resulting in a failure in shmat subroutine.

However, on subsequent retry (using a new process) the shared memory attachment may work.
The result is a random set of failures

Solution

It should be noted that this problem has only been positively diagnosed in Redhat 5 and Oracle 11.2.0.2.
It is also likely, as per unpublished BUG:8527473,  that this issue will reproduce running on Generic Linux platforms running  any Oracle 11.2.0.x. on Redhat/OEL kernels which have ASLR. 

ASLR also exists in SLES10 and SLES 11 kernels and by default ASLR is turned on, however, to date not problem has been seen on SuSE.

You can verify whether ASLR is being used as follows:

 # /sbin/sysctl -a | grep randomize
kernel.randomize_va_space = 1

If the parameter is set to any value other than 0 then ASLR is in use.

On Redhat 5 to permanently disable ASLR.

add/modify this parameter in /etc/sysctl.conf
kernel.randomize_va_space=0
kernel.exec-shield=0

You need to reboot for kernel.exec-shield parameter to take effect. 

Note that both kernel parameters are required for ASLR to be switched off.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值