分类: Oracle
2007-09-07 11:51:26
启动数据库,在open以前,出现"Restarting dead background process QMN0" 提示。没有错误产生,数据库hang 查到bug3248886,需要修改参数aq_tm_processes=0,即可启动
Queue Monitor Processes (QMNn)
队列监视进程是一个可选的后台进程,为Oracle Streams Advanced Queuing所使用。
最多可以配置10个队列监视进程。和Job进程一样,该进程的异常不会导致数据库的Crash。
通常这个错误不会导致数据库无法启动,但是在某些平台上会存在Bug,可能会导致数据库无法启动。
如果没有用到Oracle Streams Advanced Queuing选件,就可以取消该进程,数据库自然就可以启动了:
SQL> show parameter aq
NAME TYPE VALUE
------------------------------------ ----------- -----------------
aq_tm_processes integer 1
SQL> alter system set aq_tm_processes=0 scope=both;
System altered.
SQL> alter database open;
Database altered.
来自Metalink的资料:
Bug 3248886 Continous 'restarting dead background process qmn0' message in alert.log
Product (Component) Oracle Server (Rdbms) Range of versions believed to be affected Versions < 10.1.0.2 Versions confirmed as being affected
- 9.2.0.3
- 9.2.0.5
Platforms affected Generic (all / most platforms affected)
Symptoms: |
Related To: |
|
|
------------------------------
Applies to:
Oracle Server - Enterprise Edition - Version: 9.2.0.1 to 9.2.0.5
This problem can occur on any platform.
Symptoms
In a RAC enviroment the following message appears in the alert log during
instance startup / database open
"Restarting dead background process QMN0"
Cause
During database startup the starting function for QMN process waits for 30 seconds
allowing the DB startup to complete. In RAC env, the startup may take up more time
as the SGA initialization may not be complete. Thus PMON tries to restart QMN again
and as SGA initialization is not yet complete the message appears in the alert.log
about "Restarting dead background process QMN0".
This has been reported as Bug : 3248886
Solution
Workaround: Set aq_tm_processes=0 in the init.ora. It can be set to desired
value through alter system set aq_tm_processes=n after DB is completely open.
Fix : This issue does not happen in Oracle 10i. Backports are available on top
of 9.2.0.4 and 9.2.0.5 for some platforms.
References
Bug 3248886 - Continous 'Restarting Dead Background Process Qmn0' Message In Alert.Log