设为首页
加入收藏
站内地图
旧版入口
当前位置:首页 > 站长学院 > 数据库 > Oracle

解决Restarting死进程QMN0问题一例

作者:佚名 出处:网络转载 时间:08-18 点击:

内容载入中...

一大早被电话吵醒,同事说一个数据库应用升级之后无法启动。
后台连续报错:


Sun Apr 30 10:48:41 2006
Restarting dead background process QMN0
QMN0 started with pid=9
Sun Apr 30 10:53:42 2006
Restarting dead background process QMN0
QMN0 started with pid=9

那么QMN0是什么进程呢?

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.

此案例的数据库版本为9.2.0.3,平台为Sun Solaris:

SQL> select * from v$version;

BANNER
----------------------------------------------------------------
Oracle9i Enterprise Edition Release 9.2.0.3.0 - 64bit Production
PL/SQL Release 9.2.0.3.0 - Production
CORE    9.2.0.3.0       Production
TNS for Solaris: Version 9.2.0.3.0 - Production
NLSRTL Version 9.2.0.3.0 - Production

SQL> exit
Disconnected from Oracle9i Enterprise Edition Release 9.2.0.3.0 - 64bit Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.3.0 - Production

$ isainfo -v
64-bit sparcv9 applications
32-bit sparc applications

原文地址:http://www.eygle.com/archives/2006/04/restarting_dead_qmn0_process.html

收藏本文:
】【打印页面】【推荐给朋友】【关闭窗口

站长学院

推荐信息