Oracle 侦听器状态被阻止
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/253563/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
Oracle listener state blocked
提问by Eli Courtwright
I have a webpp which works fine when under a light load. However, when we run a lot of threads each with their own database connection, then we start getting the error
我有一个在轻负载下工作正常的 web 应用程序。但是,当我们运行很多线程时,每个线程都有自己的数据库连接,然后我们开始收到错误
ORA-12519: TNS:no appropriate service handler found
After looking online I found that running lsnrctl services
was a good diagnostic step, so I did that. The result for our service was
在网上查看后,我发现跑步lsnrctl services
是一个很好的诊断步骤,所以我这样做了。我们服务的结果是
Service "orcl" has 1 instance(s).
Instance "orcl", status READY, has 1 handler(s) for this service...
Handler(s):
"DEDICATED" established:130 refused:0 state:blocked
LOCAL SERVER
The number of established connections is consistent with the number of threads. However, the state:blocked
seems like a cause and/or symptom of this problem.
建立的连接数与线程数一致。但是,这state:blocked
似乎是此问题的原因和/或症状。
So what's my next step? The max number of open sessions is 1024, which is more than enough, and there's no limit to the number of sessions per user. I ran this test after a reboot of the machine, and no other programs were connected. I'm really not sure what to try next, so any help will be greatly appreciated.
那么我的下一步是什么?最大打开会话数为1024,绰绰有余,每个用户的会话数没有限制。我在机器重启后运行了这个测试,没有连接其他程序。我真的不确定接下来要尝试什么,所以任何帮助将不胜感激。
EDIT: Upping the processes
and sessions
parameters seemed to do the trick. In addition to finding Matthew's suggestion helpful, this emaildescribed my problem perfectly.
编辑:增加processes
和sessions
参数似乎可以解决问题。除了发现 Matthew 的建议很有帮助之外,这封电子邮件还完美地描述了我的问题。
回答by Matthew Watson
Have your checked your alert log it should tell you what is going wrong if oracle is running out of resources? Sounds like you may be out of processes,
您是否检查过您的警报日志,如果 oracle 资源不足,它应该告诉您出了什么问题?听起来你可能没有进程,
Run in sqlplus
,
运行sqlplus
,
SQL> show parameter processes
it will show you how many processes oracle will allow. You may need to increase this a bit.
它将向您显示 oracle 允许的进程数。您可能需要增加一点。
If you have a metalink account, then check article 240710.1for more details.
如果您有 metalink 帐户,请查看文章240710.1以获取更多详细信息。