ORA-00018-超出最大连接数

1、错误提示:
ORA-00018: maximum number of sessions exceeded。
2、问题分析:
使用下面的sql去排查和验证:
(1)使用sys用户(DBA权限)连接数据库;
(2)查询当前使用的process、session数量。
select count(*) from v$process;
select count(*) from v$session;
(3)查询系统设置的process、session数量。
show parameters processes;
show parameters sessions;
对比当前使用的process、session数量与系统设置的数量,如果当前使用的数量等于或接近系统设置的数量,则当业务系统再次访问时,实际的processes、sessions值(包括新产生的)会超过Oracle的系统限制的数量,导致出现超出最大连接数的错误提示。
Oracel默认processes的值为150,导致实际的sessions值会超过Oracle的设置值,所以会出错。sessions与processes的数量关系:sessions=processes*1.1+5。
3、解决办法:
(1)增大processes、sssions数值。
alter system set processes=1000 scope=spfile;
alter system set sssions=1105 scope=spfile;
(2)重启数据库实例。
4、说明:
(1)事前最好定期做好数据备份,免得操作不当,造成数据丢失。
(2)processes、sessions超出系统限制的数量后,可能使用sys用户(DBA权限)无法连接数据库。可以在空闲时间把应用程序停掉一段时间譬如15分钟,看下是否释放一些session,再用sys用户连接。
(3)可以在空闲时间如晚上的业务不办理期间,只停掉oracle的监听服务,等待一段时间譬如15分钟,再次启动oracle的监听服务,看下是否释放一些session,再用sys用户连接。
 

转载于:https://www.cnblogs.com/apromise/p/9081801.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值