Oracle会话数量查询及结束会话

来源:Oracle认证    发布时间:2012-11-12    Oracle认证视频    评论

    一、数据库会话数量查询
   
    查询当前数据库会话数量:select * from v$session
   
    修改数据库最大会话数量:alter system set processes=500 scope=spfile (在命令模式下执行)
   
    查看当前数据库最大会话上限:show parameters processes; 
    
    查看当前数据库DBLINK最多可打开的连接数量:show parameters open_links;
   
    二、删除被锁住的Session
   
    1、一般的话只要下面两条命令就可以:
   
    (1)select t1.sid,t1.serial#,t1.username,t1.logon_time from v$session t1,
   
    v$locked_object t2 where t1.sid=t2.session_id order by t1.logon_time; 
    
    (2)alter system kill session 'sid, serial#';
   
    备注:其中(2)中的sid和serial#是(1)中查询出来的。
   
    2、有时这种方法还是删不掉,就要用ORAKILL命令了
   
    (1)select object_name,machine,s.sid,s.serial# from v$locked_object l,
   
    dba_objects o ,v$session s where l.object_id=o.object_id and l.session_id=s.sid;
   
    (2)select spid ,osuser,s.program from v$session s,
   
    v$process p where s.paddr=p.addr and s.sid=93;
    
    (3)orakill sid spid(unix 系统下,root身份:kill sid spid)
   
    说明:
   
    第一条2(1)和1(1)效果是一样的,只是查出的内容更多,我们要的,关键是这个sid,
   
    第二条中的93,就是第一条中查询出的sid;
   
    第三条要在系统下进行,cmd下直接使用,spid就是第二条中查出来的spid.
   
    另外,unix下的,没实际使用,原例子是这么写的 kill -9 12345(12345是spid,前面-9个人估计是数据库的sid吧…)

视频学习

我考网版权与免责声明

① 凡本网注明稿件来源为"原创"的所有文字、图片和音视频稿件,版权均属本网所有。任何媒体、网站或个人转载、链接转贴或以其他方式复制发表时必须注明"稿件来源:我考网",违者本网将依法追究责任;

② 本网部分稿件来源于网络,任何单位或个人认为我考网发布的内容可能涉嫌侵犯其合法权益,应该及时向我考网书面反馈,并提供身份证明、权属证明及详细侵权情况证明,我考网在收到上述法律文件后,将会尽快移除被控侵权内容。

最近更新

社区交流

考试问答