找出提交频繁的SQL语句

5 篇文章 0 订阅
1 篇文章 0 订阅

找出提交频繁的SQL语句

标签(空格分隔): Oracle 优化 脚本


检查是否有过分提交的语句(关键是得到sid就好办了,代入V$SESSION就可知道是什么进程,接下来还可以知道V$SQL)

  • 提交次数最多的SESSION
set linesize 1000
column sid             format 99999
column program         format a20
column machine         format a20
column logon_time      format date
column wait_class      format a10
column event           format a32
column sql_id          format 9999
column prev_sql_id     format 9999
column WAIT_TIME       format 9999
column SECONDS_IN_WAIT format 9999
select t1.sid, t1.value, t2.name
  from v$sesstat t1, v$statname t2
 where t2.name like '%user commits%' 
   and t1.STATISTIC# = t2.STATISTIC#
   and value >= 10000
 order by value desc;
  • 取得SID既可以代入到V S E S S I O N 和 V SESSION 和V SESSIONVSQL中去分析
 --得出SQL_ID
  select t.SID,
         t.PROGRAM,
		     t.EVENT,
         t.LOGON_TIME,
         t.WAIT_TIME,
         t.SECONDS_IN_WAIT,
         t.SQL_ID,
         t.PREV_SQL_ID
   from v$session t
  where sid in (194);
  • 根据sql_id或prev_sql_id代入得到SQL
  select t.sql_id,
         t.sql_text,
         t.EXECUTIONS,
         t.FIRST_LOAD_TIME,
         t.LAST_LOAD_TIME
  from v$sqlarea t
 where sql_id in ('ccpn5c32bmfmf');
  • 也请关注一下这个:
 select * from v$active_session_history where session_id=194
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值