接到研发电话,无法连上一台测试数据库(Oracle 10.2.0.5.0 - 64bit)。alert里看到
Sat Jun 11 00:23:52 CST 2011 Process m000 died, see its trace file Sat Jun 11 00:23:52 CST 2011 ksvcreate: Process(m000) creation failed Sat Jun 11 00:24:53 CST 2011 Process m000 died, see its trace file Sat Jun 11 00:24:53 CST 2011 ksvcreate: Process(m000) creation failed Sat Jun 11 00:25:54 CST 2011 Process m000 died, see its trace file Sat Jun 11 00:25:54 CST 2011 ksvcreate: Process(m000) creation failed |
sqlplus登录是connect状态,google之。
来自 http://itspace.iteye.com/blog/945924 可以看到m000进程创建失败,PMON进程无法启动该进程。一般情况下,PMON无法启动进程原因有3个:1、Oracle连接数超过进程数限制。(正是由于Oracle达到了进程数限制,进而PMON无法创建m000进程 )2、进程死锁。3、bug |
查看进程数量,比对spfile的process数量,果然是超过了限制
于是,关闭数据库的监听,(杀了些连接db的进程),连接数下降后,sqlplus正常,没有看到什么sql堵塞。开启监听后,连接数又立刻增加了。继续关闭监听,
netstat -anp|grep 1521|grep EST|awk '{print $5}'|awk -F : '{print $1}'|sort -rn|uniq -c
查看前端连接数,找到异常的ip。联系研发查看前端机器。由于暂时找不到前端的应用的问题,在sqlnet.ora里面限制此ip的连接。
tcp.validnode_checking=yes
tcp.excluded_nodes=(xx.xx.xx.xx)
重新开启监听。
其他:
SQL> select * from v$version;
BANNER
----------------------------------------------------------------
Oracle Database 10g Enterprise Edition Release 10.2.0.5.0 - 64bi
PL/SQL Release 10.2.0.5.0 - Production
CORE 10.2.0.5.0 Production
TNS for Linux: Version 10.2.0.5.0 - Production
NLSRTL Version 10.2.0.5.0 - Production
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/23650854/viewspace-697661/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/23650854/viewspace-697661/