oracle数据库响应时间,Oracle 10g数据库中分析响应时间(5)

SQL语句响应时间分析

在Oracle9i数据库中查看SQL语句的响应时间就变得比较容易了,现在在Oracle10g中,DBA们拥有更多的工具可以帮助他们跟踪效率低下的数据库代码。以前可以用来查询的视图是V$SQLAREA,从Oracle9i开始,这个视图增加了ELAPSED_TIME和CPU_TIME两个列,这极大的有助于去确定实际用户的SQL语句的执行经历。(如果除以执行的次数列EXECUTIONS,那么将得到平均每次执行这个SQL语句所用的平均时间)在Oracle10g数据库中,V$SQLAREA视图中增加了6个新的和等待以及时间相关的列:

APPLICATION_WAIT_TIME

CONCURRENCY_WAIT_TIME

CLUSTER_WAIT_TIME

USER_IO_WAIT_TIME

PLSQL_EXEC_TIME

JAVA_EXEC_TIME

这些新的列有助于确定很多信息,例如:一个存储过程中花费在PL/SQL代码和标准SQL执行上的时间的对比,以及一个SQL语句经历的任何详细的用户I/O等待。例如:下面的SQL语句能帮助找到前5位用户I/O等待最高的SQL语句:

select * from

(select sql_text,

sql_id,

elapsed_time,

cpu_time,

user_io_wait_time

from sys.v_$sqlarea

order by 5 desc)

where rownum < 6;

SQL_TEXT SQL_ID ELAPSED_TIME CPU_TIME USER_IO_WAIT_TIME

DECLARE job BINARY_INTEGER := :job;

next_date DATE := :mydate; broken BOOLEAN :

6gvch1xu9ca3g 11077912 747091 8593479

select /*+ index(idl_ub1$ i_idl_ub11) +*/ piece#,

length,piece from idl_ub1

$ wher cvn54b7yz0s8u 6455976 220128 6427409

select s.synonym_name object_name,

o.object_type from sys.all_synonyms s,

s fqmpmkfr6pqyk 11814078 6958760 3189450

select /*+ rule */ bucket, endpoint, col#,

epvalue from histgrm$ where obj#=:1 a db78fxqxwxt7r

2737680 193937 2689611

select /*+ index(idl_ub2$ i_idl_ub21) +*/ piece#,

length,piece from idl_ub2$

where 39m4sx9k63ba2 2322664 108100 2307700

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值