龙须面

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

  从V$session查找某个用户的会话信息,比如sid和siral#,执行:alter system kill 'sid,serial#',

  这个将是v$session的字段status值更新为killed,这个时候客户端连接oracle,会被提示重新连接,仅此而已!但是为这个会话的服务器进程仍然存在,继续占用着process数,

  要删掉这个process,需要从操作系统层面来删除它!

  首先查出会话的sid,serial#,paddr(oracle名下与此会话关联的进程标识):

    select sid,serial#,paddr from v$session; #可以限定某个用户发起的会话,某些类型、状态的会话

  查出这个会话关联的操作系统进程标识:

    select spid from v$process where addr = paddr;(来自上一个查询的结果)

  K掉会话:alter system kill 'sid,serial#';

  k掉此会话关联的操作系统进程:

    查找相应的OS进程:ps -ef |grep spid

    K掉OS进程:kill -9 xxx

  

  

posted on 2012-11-22 14:30  木子小黑  阅读(474)  评论(0编辑  收藏  举报