代码之家  ›  专栏  ›  技术社区  ›  Egalitarian

编写查询以终止用户会话

  •  3
  • Egalitarian  · 技术社区  · 16 年前

    select SID from v$session where username = 'some user'
    

    如果该特定用户名有任何SID,则使用以下命令杀死该SID:

    alter system kill session 'sid';
    

    alter system kill session
        where sid = select sid from v$session where username = 'some user'
    

    当该用户名没有特定的sid时,此查询失败

    查询必须确保不使用大括号“{”或“}”

    数据库是ORACLE10g

    1 回复  |  直到 16 年前
        1
  •  6
  •   Tony Andrews    16 年前

    我通常做的是:

    select 'alter system kill session '''||sid||','||serial#||''';'
    from v$session
    where username = 'someuser';
    

    这将返回如下结果:

    alter system kill session '11,222';
    alter system kill session '22,444';
    

    然后我复制并粘贴我想要执行的结果。

    推荐文章