达梦数据库-应用会话关闭没释放导致连接超出最大会话数限制而报错

背景:数据库器重启之后,有个备机磁盘挂了导致读写分离集群起不来,修复完集群正常重启之后,应用端界面有些模块可以登录,有些无法登录,{不同子模块用户有一些不一样,对应的应用服务器也不一样)日志提示服务器模式不匹配。
1 首先想到是不是驱动问题,但之前正常,可以排除驱动包问题
2 其次,应用服务器重启(用户只是中间件服务重启),问题依旧
3 查看数据库,在登录客户端有时会提示网络通信异常,多登录几次可以成功(检查网络,用户文件打开数,数据库服务进程文件打开数都正常)
4 查看实例日志,显示最大连接数限制
5 查看最大会话数及语句句柄设置大小,(正常来说,1500明显是足够使用的),将max_sessions修改到5000,只是登录情况好点,有些应用模块还是登录不了
select * from v$dm_ini where para_name like 'MAX_SESSION%';
6 查看应用连接情况(如下图所示25和46两个服务器都连接数明显偏大,查询也没那么多活动会话。应用会话连接数没释放)
select clnt_ip,count(*) from v$sessions group by clnt_ip;
7  将对应应用服务器重启,再查询,看是否其他服务器也会出现上千会话数,如果有将对应服务器也重启,到最后查询结果如下,登录应用操作界面,各模块都正常无报错
 
 
posted @   fangzpa  阅读(3151)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示