开发人员反映一开发数据库出现问题,无法连接,登录至后台alert日志查看
[quote]Tue Mar 8 07:49:09 2011
Process m000 died, see its trace file
Tue Mar 8 07:49:09 2011
ksvcreate: Process(m000) creation failed
Tue Mar 8 07:50:10 2011
Process m000 died, see its trace file
Tue Mar 8 07:50:10 2011
ksvcreate: Process(m000) creation failed
Tue Mar 8 07:51:11 2011
Process m000 died, see its trace file
Tue Mar 8 07:51:11 2011
ksvcreate: Process(m000) creation failed
[ora10g@localhost bdump]$ tail -f alert_xe.log
Tue Mar 8 08:48:11 2011
ksvcreate: Process(m000) creation failed
Tue Mar 8 08:49:12 2011
Process m000 died, see its trace file
Tue Mar 8 08:49:12 2011
ksvcreate: Process(m000) creation failed
Tue Mar 8 08:50:13 2011
Process m000 died, see its trace file
Tue Mar 8 08:50:13 2011
ksvcreate: Process(m000) creation failed[/quote]
可以看到m000进程创建失败,PMON进程无法启动该进程。一般情况下,PMON无法启动进程原因有3个:1、Oracle连接数超过进程数限制。2、进程死锁。3、bug
用sqlplus连接数据库只出现Connected.状态。
[quote][ora10g@localhost ~]$ sqlplus "/as sysdba"
SQL*Plus: Release 10.2.0.4.0 - Production on Tue Mar 8 08:48:34 2011
Copyright (c) 1982, 2007, Oracle. All Rights Reserved.
Connected.
SQL> exit
Disconnected[/quote]
进而查看LOCAL=NO的连接数,发现已经达到其进程数限制
[quote][ora10g@localhost ~]$ ps -ef|grep LOCAL|wc -l
129
SQL> show parameter processes
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
aq_tm_processes integer 0
db_writer_processes integer 1
gcs_server_processes integer 0
job_queue_processes integer 10
log_archive_max_processes integer 2
processes integer 150[/quote]
可以看到alert日志错误,正是由于Oracle达到了进程数限制,进而PMON无法创建m000进程
[quote]Tue Mar 8 07:49:09 2011
Process m000 died, see its trace file
Tue Mar 8 07:49:09 2011
ksvcreate: Process(m000) creation failed
Tue Mar 8 07:50:10 2011
Process m000 died, see its trace file
Tue Mar 8 07:50:10 2011
ksvcreate: Process(m000) creation failed
Tue Mar 8 07:51:11 2011
Process m000 died, see its trace file
Tue Mar 8 07:51:11 2011
ksvcreate: Process(m000) creation failed
[ora10g@localhost bdump]$ tail -f alert_xe.log
Tue Mar 8 08:48:11 2011
ksvcreate: Process(m000) creation failed
Tue Mar 8 08:49:12 2011
Process m000 died, see its trace file
Tue Mar 8 08:49:12 2011
ksvcreate: Process(m000) creation failed
Tue Mar 8 08:50:13 2011
Process m000 died, see its trace file
Tue Mar 8 08:50:13 2011
ksvcreate: Process(m000) creation failed[/quote]
可以看到m000进程创建失败,PMON进程无法启动该进程。一般情况下,PMON无法启动进程原因有3个:1、Oracle连接数超过进程数限制。2、进程死锁。3、bug
用sqlplus连接数据库只出现Connected.状态。
[quote][ora10g@localhost ~]$ sqlplus "/as sysdba"
SQL*Plus: Release 10.2.0.4.0 - Production on Tue Mar 8 08:48:34 2011
Copyright (c) 1982, 2007, Oracle. All Rights Reserved.
Connected.
SQL> exit
Disconnected[/quote]
进而查看LOCAL=NO的连接数,发现已经达到其进程数限制
[quote][ora10g@localhost ~]$ ps -ef|grep LOCAL|wc -l
129
SQL> show parameter processes
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
aq_tm_processes integer 0
db_writer_processes integer 1
gcs_server_processes integer 0
job_queue_processes integer 10
log_archive_max_processes integer 2
processes integer 150[/quote]
可以看到alert日志错误,正是由于Oracle达到了进程数限制,进而PMON无法创建m000进程