关于使用执行计划进行sql调优的问题

zhengpeiyong 2011-03-29 11:25:41
各位好,本人非DBA,作为开发人员对sql调优比较感兴趣,以前都是写普通的sql语句,刚接触执行计划这些东西,想问下根据执行计划判断sql性能的简单的判断指标。我用pl/sql developer开发,通过F5查看执行计划,其中有I/O消耗、CPU消耗、基数等多项指标,但不知调优时应该如何参考,比如哪个值的大小代表什么含义,以及大小对性能的体现是正比还是反比等等。
特此请教,往各位指点,最好稍微详细点介绍下各个指标,谢谢!
...全文
208 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhengpeiyong 2011-04-06
  • 打赏
  • 举报
回复
这几天看了写资料,收获很多,大家说的其实都对,只是这个没有固定的规范,而且不同sql的各项数值也没有实际意义,所以很难一下说清楚,总体来说,oracle11g以后,单一的优化oracle其实都已经帮着做了,只是特殊sql的优化要综合N多因素综合考虑,这也就是DBA的特长了。

下边这个帖子讲的很好,推荐给大家看看:
http://www.oracle.com.cn/viewthread.php?tid=80153

结贴了,现在回答问题的人越来越少了!
lovehuazi 2011-04-01
  • 打赏
  • 举报
回复
有一列是description,指示的是全表扫描还是索引,这个不用说当然是走索引好了..
最重要的是cost,cardinality,bytes这几列。cardinality是逻辑读的意思,基本上它的值越小越好,表示的性能越好,在几十到几百都算正常的,当然得看你全表的数据量大小了..
minitoy 2011-04-01
  • 打赏
  • 举报
回复
主要还是看索引
JuanRiquelme 2011-04-01
  • 打赏
  • 举报
回复
不过还是要结合你的业务来说,例如:逻辑读出许多数据块(从SGA buffer cache读取),不见的系统性能就没有问题,一条SQL语句执行了很长时间,却返回很少的数据块,也是有问题的
getmydream 2011-03-29
  • 打赏
  • 举报
回复
支持!
可以先google一下参数的基本含义!
zhengpeiyong 2011-03-29
  • 打赏
  • 举报
回复
怎么没人回复呢,自己顶下
另外这篇文章可以参考下,正在看,只是内容太宽泛了......
http://www.oracle.com.cn/viewthread.php?tid=80153
horizonlyhw 2011-03-29
  • 打赏
  • 举报
回复
我也不懂 不过感觉IO这个参数很实在·

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧