Chinaunix首页 | 论坛 | 博客
  • 博客访问: 3693271
  • 博文数量: 715
  • 博客积分: 1860
  • 博客等级: 上尉
  • 技术积分: 7745
  • 用 户 组: 普通用户
  • 注册时间: 2008-04-07 08:51
个人简介

偶尔有空上来看看

文章分类

全部博文(715)

文章存档

2023年(75)

2022年(134)

2021年(238)

2020年(115)

2019年(11)

2018年(9)

2017年(9)

2016年(17)

2015年(7)

2014年(4)

2013年(1)

2012年(11)

2011年(27)

2010年(35)

2009年(11)

2008年(11)

分类: Oracle

2020-06-02 12:31:34

工作中检查oracle数据库当前会话。

青铜 dba,爱用:
select event,count(0) from v$session group  by event;

白银 dba,改为:
select event,count(0) from v$session where wait_class<>'Idle' group by event order by 2 desc;

黄金 dba,改为:
SELECT * FROM (SELECT sid, username,event,sql_id,BLOCKING_INSTANCE blk_inst, 
  BLOCKING_SESSION blk_sid,program,machine,to_char(logon_time, 'yy-mm-dd hh24:mi:ss') 
  logon_time,SECONDS_IN_WAIT seconds,state FROM V$SESSION WHERE (WAIT_CLASS <> 'Idle')  or state <> 'WAITING' ORDER BY SECONDS_IN_WAIT DESC, event)

一个session的状态要么是在等待,要么是在ON CPU,v$session.state这个列可以判断这个状态。有且只有v$session.state='WAITING'的时候,才代表这个session当前正在等待这个event,否则代表这个session在ON CPU

王者:
select event from v$session order by 1

阅读(1085) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~