ITPub博客

Windows下大量SYSMAN会话超出会话限制

原创 作者:hooca 时间:2014-09-25 10:17:07 1 删除 编辑
平台:Windows 2008 R2(64bit) + Oracle 11g R2(64bit)

尝试登陆sqlplus,发现报错如下:

ORA-00020: maximum number of processes (150) exceeded

观察当前会话情况:


点击(此处)折叠或打开

  1. select username,count(sid) from v$session group by username;

USERNAME                       COUNT(SID)
------------------------------ ----------
                                       21
SYSMAN                                124
SYS                                     1

发现SYSMAN用户有大量会话数,后发现SYSMAN主要用的PROGRAM是OMS。

查阅OMS相关信息,得知其是由Enterprise Management产生的。

关闭EM,


点击(此处)折叠或打开

  1. emctl stop dbconsole

Oracle Enterprise Manager 11g Database Control Release 11.2.0.1.0
Copyright (c) 1996, 2010 Oracle Corporation.  All rights reserved.
https://CCNSIA0VFRTEST.ap.carrier.UTC.com:1158/em/console/aboutApplication
The OracleDBConsoleORCL service is stopping.............
The OracleDBConsoleORCL service was stopped successfully.

确保下次启动默认不启动EM,需要在Windows服务中关闭OracleDBConsoleORCL服务的自动启动。

然后观察当前会话状况,


点击(此处)折叠或打开

  1. select username,count(sid) from v$session group by username;

USERNAME                       COUNT(SID)
------------------------------ ----------
                                       26
SYSMAN                                  3
SYS                                     1

发现已经没有那么多SYSMAN会话了。重新登录SQLPLUS能够成功了。

总结:该状况发生于Windows平台下,很可能是Windows下特有的Bug,目前只能通过关闭EM方式避免,不知道有没有高手有其他比较好的解决办法?



请登录后发表评论 登录
全部评论

注册时间:2009-09-29

  • 博文量
    205
  • 访问量
    363174