Oracle数据库数据恢复、性能优化

找回密码
注册
搜索
热搜: 活动 交友 discuz
发新帖

0

积分

0

好友

8

主题
1#
发表于 2013-3-26 16:21:24 | 查看: 7064| 回复: 6
请教,如何用SQL语法获取oracle实例占用的服务器CPU,内存及IO的情况?需要用到哪些视图呢?
2#
发表于 2013-3-26 16:40:46
  1. select instance_number,
  2.        snap_id,
  3.        min(begin_time) as 快照开始时间,
  4.        max(end_time) as 快照停止时间,
  5.        round(sum(case metric_name
  6.                    when 'Host CPU Utilization (%)' then
  7.                     average
  8.                  end)) as CPU使用率,
  9.        sum(case metric_name
  10.              when 'Current OS Load' then
  11.               MAXVAL
  12.            end) as 最大OS负载,
  13.        sum(case metric_name
  14.              when 'Current OS Load' then
  15.               average
  16.            end) as 平均OS负载,
  17.        round(sum(case metric_name
  18.                    when 'User Transaction Per Sec' then
  19.                     average
  20.                  end)) as 每秒事务数,
  21.        round(sum(case metric_name
  22.                    when 'Executions Per Sec' then
  23.                     average
  24.                  end)) as 每秒SQL执行次数,
  25.        round(sum(case metric_name
  26.                    when 'Logical Reads Per Sec' then
  27.                     average
  28.                  end)) as 每秒逻辑读总量,
  29.        round(sum(case metric_name
  30.                    when 'Physical Read Total IO Requests Per Sec' then
  31.                     average
  32.                  end)) as 物理读IOPS,
  33.        round(sum(case metric_name
  34.                    when 'Physical Write Total IO Requests Per Sec' then
  35.                     average
  36.                  end)) as 物理写IOPS,
  37.        round(sum(case metric_name
  38.                    when 'Redo Writes Per Sec' then
  39.                     average
  40.                  end)) as REDO_IOPS,
  41.        round(sum(case metric_name
  42.                    when 'Physical Read Total Bytes Per Sec' then
  43.                     average / 1024 / 1024
  44.                  end)) as 物理读MBPS,
  45.        round(sum(case metric_name
  46.                    when 'Physical Write Total Bytes Per Sec' then
  47.                     average / 1024 / 1024
  48.                  end)) as 物理写MBPS,
  49.        round(sum(case metric_name
  50.                    when 'Redo Generated Per Sec' then
  51.                     average / 1024 / 1024
  52.                  end)) as REDO_MBPS,
  53.        round(sum(case metric_name
  54.                    when 'Network Traffic Volume Per Sec' then
  55.                     average / 1024 / 1024
  56.                  end)) as 每秒网络流量_MB
  57.   from dba_hist_sysmetric_summary t
  58. where t.instance_number in (1 /*, 2*/)
  59.    and begin_time >= trunc(sysdate)
  60. group by instance_number, snap_id
  61. order by snap_id desc, instance_number;
复制代码
供参考!

回复 只看该作者 道具 举报

3#
发表于 2013-3-26 16:57:11
首先先谢谢啦,再问能不能获取即时性的呢?查询当前的CPU值,内存值?

回复 只看该作者 道具 举报

4#
发表于 2013-3-26 17:16:04
http://www.askmaclean.com/archives/recommend-sql-dashboard-for-rac.html

oracle top

回复 只看该作者 道具 举报

5#
发表于 2013-3-26 18:48:10
看一个瞬间值有什么具体意义呢

回复 只看该作者 道具 举报

6#
发表于 2013-4-1 09:04:07
想做个性能监视器,所以先获取即时值,谢谢

回复 只看该作者 道具 举报

7#
发表于 2013-4-3 13:59:44
2楼的脚本厉害!

回复 只看该作者 道具 举报

您需要登录后才可以回帖 登录 | 注册

QQ|手机版|Archiver|Oracle数据库数据恢复、性能优化

GMT+8, 2024-12-27 15:54 , Processed in 0.051884 second(s), 21 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部
TEL/電話+86 13764045638
Email service@parnassusdata.com
QQ 47079569