zoukankan      html  css  js  c++  java
  • Oracle锁表查杀会话进程

    一、逐条
    --锁表

    (1)查表名 和 sessionid
    select b.owner,b.object_name,a.session_id,a.locked_mode
    from v$locked_object a,dba_objects b
    where b.object_id = a.object_id;

    (2)sessionid(sid) 、serial#

    select b.username,b.sid,b.serial#,logon_time
    from v$locked_object a,v$session b
    where a.session_id = b.sid order by b.logon_time;
    (3)查杀会话
    alter system kill session'5,19141';  -- 两个数字 表示  sid serial#

    集合成一条语句

    SELECT 'alter system kill session '''||SID || ',' || SERIAL#||''';'
    FROM V$SESSION
    WHERE SID in
    (SELECT SESSION_ID
    FROM V$LOCKED_OBJECT, USER_OBJECTS
    WHERE V$LOCKED_OBJECT.OBJECT_ID = USER_OBJECTS.OBJECT_ID);

    alter system kill session '12,11697';

    二、批量

     1 declare cursor mycur is
     2 select b.sid,b.serial#
     3   from v$locked_object a,v$session b
     4   where a.session_id = b.sid group by b.sid,b.serial#;
     5  
     6  
     7 begin
     8   for cur in mycur
     9     loop  
    10      execute immediate ( 'alter system  kill session  '''||cur.sid || ','|| cur.SERIAL# ||''' ');
    11      end loop;
    12  
    13 end;
    美好生活
  • 相关阅读:
    Oracle目录结构及创建新数据库
    Oracle登陆及修改用户密码
    前端开发笔记
    2014年11月6日17:57:13
    游戏体验篇 二
    游戏前端开发随笔【2】
    游戏体验篇 一
    游戏 之 前端系统开发
    换个手机号也是醉了
    winsock2.h的SB东西
  • 原文地址:https://www.cnblogs.com/ssbydk/p/9700318.html
Copyright © 2011-2022 走看看