Oracle中Session连接数超过上限值

来源:互联网 发布:防蓝光眼镜原理 知乎 编辑:程序博客网 时间:2024/04/29 13:28

        某进程处理数据失败,导致Session连接无法正常断开,如果此进程频繁操作数据,会导致Oracle系统的Session连接数超出了默认的上限值150。

具体处理方法:

       1、创建一个存储过程,用于定时删除产生异常而不能正常断开的Session。

    PROCEDURE KILL_SESSION
    IS
        V_SQL_STR       VARCHAR2 (300);
    BEGIN
        FOR T IN (SELECT SID, USERNAME, PADDR, STATUS, serial# FROM V$SESSION
                         WHERE USERNAME = 'USER_ABC' AND STATUS IN ('INACTIVE', 'KILLED')
                         AND UPPER(PROGRAM) = '某进程.EXE' AND LOGON_TIME < SYSDATE - 20/1440)
        LOOP
            V_SQL_STR := 'ALTER SYSTEM KILL SESSION ''' || T.SID || ',' || T.SERIAL# || ''' IMMEDIATE';
            EXECUTE IMMEDIATE V_SQL_STR;
        END LOOP;
    END KILL_SESSION;


        2、新建一个job定时去执行就可以了。

        通过这种方法,可以把Oracle中Session状态为Inactive和Killed直接终止掉。

        (注:这里的连接时间我设置为20分钟。执行Kill Session操作一般会经历两个阶段,首先INACTIVE会变为KILLED。此时不处理,Session很难被系统回收掉。所以

                    再执行一次Kill操作,则可以将加速处理死锁和回滚。)

0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 最近身体素质越来越差怎么办 身体素质差容易感冒怎么办 易疲惫犯困体质怎么办 成年狗体力不行怎么办 累了体力不支怎么办 新兵连成绩不合格怎么办 征兵体检血压高怎么办 魔域手游幻兽亲密度过低怎么办 移动账号被锁定怎么办 魔域手游账号被冻结怎么办 魔域手游没用的装备怎么办 5173账号三年找回怎么办 电脑的任务栏不见了怎么办 减肥出现瓶颈期怎么办 减肥到瓶颈期怎么办 减脂皮肤松弛怎么办 减肥期间上火了怎么办 涂了瘦身霜好辣怎么办 站起来就头晕怎么办 蹲了起来头晕怎么办 蛙跳后大腿疼怎么办 头低久了脖子痛怎么办 边防武警改革义务兵怎么办 家门钥匙丢了怎么办 森警改革士官怎么办 武警改制后士兵怎么办 消防改革时新兵怎么办 腈纶衣服染色了怎么办 部队新兵体能训练不及格怎么办 做足疗私处有了反应怎么办 跑步跑不起来怎么办 28岁有抬头纹怎么办? 眼睛近视加散光怎么办 眼睛近视又散光怎么办 眼睛近视有散光怎么办 眼睛不近视散光怎么办 孩子眼睛近视散光怎么办 小孩眼睛散光近视怎么办 眼睛近视和散光怎么办 考军校体能不行怎么办 高中体测不及格怎么办