zoukankan      html  css  js  c++  java
  • oracle查看session的语句

    1.查看session可以把status改为ACTIVE和INACTIVE

    v$session 和gv$session 只在RAC中区别明显,有g是全局的,rac的两个数据库中的内容,没有是但实例的数据库的,内容不全

    rac么?  gv$开头视图是rac全局的,v$开头是本节点的

    gv$session比v$session多一个字段而已: INST_ID

    select machine ,count(*) from gv$session where logon_time < sysdate -1 and status ='INACTIVE' group by machine;

    2.查看目前的session已经正在执行的sql

    SELECT S.USERNAME,
    S.SID,
    S.SERIAL#,
    S.INST_ID,
    S.EVENT,
    S.WAIT_CLASS,
    S.SQL_EXEC_START,
    S.LOGON_TIME,
    S.ACTION,
    SQ.SQL_TEXT,
    S.MACHINE
    FROM GV$SESSION S, GV$SQLAREA SQ
    WHERE S.STATUS = 'ACTIVE'
    AND S.USERNAME IS NOT NULL
    AND S.SQL_ID = SQ.SQL_ID;

    3.单节点生成批量kill session的sql

    select 'alter system kill session ''' || sid || ',' || serial# || ''' immediate;' cmd from v$session

    where username is not null

    and status = 'ACTIVE'

    4.RAC架构生成批量kill session的sql

    方法一、在节点一执行

    select 'alter system kill session ''' || sid || ',' || serial# || ''' immediate;' cmd from v$session

    where username is not null

    and status = 'ACTIVE'

    生成的kill语句,在节点一服务器执行

    在节点二执行

    select 'alter system kill session ''' || sid || ',' || serial# || ''' immediate;' cmd from v$session

    where username is not null

    and status = 'ACTIVE'

    生成的kill语句,在节点二服务器执行

    需要分别杀掉

    方法二、在一个节点执行

    select 'alter system kill session ''' || sid || ',' || serial# || ''' immediate;' cmd
    from gv$session
    where username is not null and to_char(prev_exec_start,'yyyy-mm-dd hh24:mi:ss') < '2021-10-18 10:37:00' and status = 'INACTIVE'
    and inst_id=1;

    inst_id=1 指定节点,节点二可以用inst_id=2

    生成的kill语句,在节点二服务器执行

    生成删除指定时间点的KILL session语句

    select 'alter system kill session ''' || sid || ',' || serial# || ''' immediate;' cmd
    from v$session
    where username is not null and to_char(prev_exec_start,'yyyy-mm-dd hh24:mi:ss') < '2021-10-5 00:00:00' and status = 'INACTIVE'

     生成指定machine批量kill的语句

    select 'alter system kill session ''' || sid || ',' || serial# || ''' immediate;' cmd
    from v$session
    where username is not null and MACHINE like 'mes%' and status = 'INACTIVE'

    4. 查看某个时间点的active session的数量

    select 'alter system kill session ''' || sid || ',' || serial# || ''' immediate;' cmd
    from v$session
    where username is not null and MACHINE like 'mes%' and status = 'INACTIVE'

    5. Kill session的方法

     

  • 相关阅读:
    git pull 的时候 把本地的修改 覆盖远程端
    git 把其他分支上的文件拿来覆盖本地
    JS高德地图计算两地之间的实际距离
    C# 微信开发-----微信会员卡(三)激活会员卡
    C# 微信开发-----微信会员卡(二)
    Jquery点击div之外的地方隐藏当前div
    css好看的银行卡号样式
    C# 微信开发-----微信会员卡(一)
    Js操作Array数组
    好看的404代码
  • 原文地址:https://www.cnblogs.com/liuxiuxiu/p/15088970.html
Copyright © 2011-2022 走看看