常用定位性能问题的sql

可以到v$sql中查询,比如以buffer_gets,executions,disk_reads等条件判断.


--值得怀疑的SQL




selectsubstr(to_char(s.pct,'99.00'),2)||'%'load,
       s.executions executes,
       p.sql_text
 from(selectaddress,
               disk_reads,
               executions,
               pct,
               rank()over(orderbydisk_readsdesc) ranking
         from(selectaddress,
                       disk_reads,
                       executions,
                      100*ratio_to_report(disk_reads)over() pct
                 fromsys.v_$sql
                wherecommand_type!=47)
        wheredisk_reads>50*executions) s,
       sys.v_$sqltext p
wheres.ranking<=5
  andp.address=s.address
orderby1, s.address, p.piece;
--逻辑读多的SQL
select*
 from(selectbuffer_gets, sql_text
         fromv$sqlarea
        wherebuffer_gets>500000
        orderbybuffer_getsdesc)
whererownum<=30;
--执行次数多的SQL
selectsql_text, executions
 from(selectsql_text, executionsfromv$sqlareaorderbyexecutionsdesc)
whererownum<81;
--读硬盘多的SQL
selectsql_text, disk_reads
 from(selectsql_text, disk_readsfromv$sqlareaorderbydisk_readsdesc)
whererownum<21;
--排序多的SQL
selectsql_text, sorts
 from(selectsql_text, sortsfromv$sqlareaorderbysortsdesc)
whererownum<21;
--分析的次数太多,执行的次数太少,要用绑变量的方法来写sql
setpagesize600;
setlinesize120;
selectsubstr(sql_text,1,80) "sql",count(*),sum(executions) "totexecs"
 fromv$sqlarea
whereexecutions<5
groupbysubstr(sql_text,1,80)
havingcount(*)>30
orderby2;
--游标的观察
setpages300;
selectsum(a.value), b.name
 fromv$sesstat a, v$statname b
wherea.statistic#=b.statistic#
  andb.name='opened cursors current'
groupbyb.name;
selectcount(0)fromv$open_cursor;
selectuser_name, sql_text,count(0)
 fromv$open_cursor
groupbyuser_name, sql_text
havingcount(0)>30;
--查看当前用户&username执行的SQL
selectsql_text
 fromv$sqltext_with_newlines
where(hash_value, address)in
       (selectsql_hash_value, sql_address
         fromv$session
        whereusername='&username')
orderbyaddress, piece;




<script>window._bd_share_config={"common":{"bdSnsKey":{},"bdText":"","bdMini":"2","bdMiniList":false,"bdPic":"","bdStyle":"0","bdSize":"16"},"share":{}};with(document)0[(getElementsByTagName('head')[0]||body).appendChild(createElement('script')).src='http://bdimg.share.baidu.com/static/api/js/share.js?v=89860593.js?cdnversion='+~(-new Date()/36e5)];</script> 阅读(768) | 评论(0) | 转发(0) |
0

上一篇:awr报告详解(2)

下一篇:计算机启动过程

评论热议
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值