WEB开发网
开发学院数据库Oracle Oracle 10g数据库中如何分析响应时间 阅读

Oracle 10g数据库中如何分析响应时间

 2007-05-13 12:27:36 来源:WEB开发网   
核心提示: 可以在V$SYS_TIME_MODEL视图中找到相应的主要花费时间处理的部分,然后就可以根据这些来对数据库进行相应的调整,Oracle 10g数据库中如何分析响应时间(5),除了活动时间,DBA也还想知道整体的等待时间,a.total_waits,round((a.time_waited

可以在V$SYS_TIME_MODEL视图中找到相应的主要花费时间处理的部分,然后就可以根据这些来对数据库进行相应的调整。

除了活动时间,DBA也还想知道整体的等待时间。在Oracle10g数据库之前,DBA必须查看单独的等待事件来找出等待和瓶颈,现在Oracle10g数据库提供一个等待的概要机制。

select WAIT_CLASS,
  TOTAL_WAITS,
  round(100 * (TOTAL_WAITS / SUM_WAITS),2) PCT_WAITS,
  ROUND((TIME_WAITED / 100),2) TIME_WAITED_SECS,
  round(100 * (TIME_WAITED / SUM_TIME),2) PCT_TIME
  from
  (select WAIT_CLASS,
  TOTAL_WAITS,
  TIME_WAITED
  from V$SYSTEM_WAIT_CLASS
  where WAIT_CLASS != 'Idle'),
  (select sum(TOTAL_WAITS) SUM_WAITS,
  sum(TIME_WAITED) SUM_TIME
  from V$SYSTEM_WAIT_CLASS
  where WAIT_CLASS != 'Idle')
  order by 5 desc;
  WAIT_CLASS TOTAL_WAITS PCT_WAITS TIME_WAITED_SECS PCT_TIME
  User I/O 5748 61.71 67.57 65.79
  Other 182 1.95 16.85 16.41
  System I/O 2975 31.94 11.27 10.97
  Concurrency 114 1.22 6.76 6.58
  Commit 61 0.65 0.22 0.21
  Network 233 2.5 0.03 0.03
  Application 2 0.02 0 0

这样就能非常容易的找出大部分的整体等待时间。如同响应时间数据一样,我们可以用下面的查询来及时回顾最新的一个小时等待类型:

select a.sid,
  b.username,
  a.wait_class,
  a.total_waits,
  round((a.time_waited / 100),2) time_waited_secs
  from sys.v_$session_wait_class a,
  sys.v_$session b
  where b.sid = a.sid and
  b.username is not null and
  a.wait_class != 'Idle'
  order by 5 desc;
  SID USERNAME WAIT_CLASS TOTAL_WAITS TIME_WAITED_SECS
  38 SYS User I/O 22 0.19
  48 SYS User I/O 15 0.12
  38 SYS Network 21 0.01
  48 SYS Network 24 0
  38 SYS Application 2 0

上一页  1 2 3 4 5 6 7 8  下一页

Tags:Oracle 数据库 如何

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接