Oracle视图V $ OSSTAT具有一些运行统计信息,包括:
我阅读的文档尚不清楚是否重置了这些文档。有人知道吗?
我还有一个问题是,我想算出系统正在经历的平均CPU负载。为此,我希望我必须去:
busy_ticks / (idle_ticks + busy_ticks)
这样对吗?
更新11月08日
Oracle 10g r2在此表中包含一个称为LOAD的统计信息。它提供了读取值时机器的当前负载。这比使用其他信息要好得多,因为* _ticks数据是“因为实例开始”而不是当前时间点的数据。
最佳答案
如果可用,则需要包括“IOWAIT_TICKS”。
IDLE_TICKS-百分之一的数字
其次,处理器已经闲置,
所有处理器合计
BUSY_TICKS-百分之一的秒数
处理器一直在忙于执行
用户或内核代码,总计
处理器
IOWAIT_TICKS-a的百分之一秒
处理器一直在等待I / O
完整,全部领导
处理器
这是一个查询。
SELECT (select value from v$osstat where stat_name = 'BUSY_TICKS') /
(
NVL((select value from v$osstat where stat_name = 'IDLE_TICKS'),0) +
NVL((select value from v$osstat where stat_name = 'BUSY_TICKS'),0) +
NVL((select value from v$osstat where stat_name = 'IOWAIT_TICKS'),0)
)
FROM DUAL;
在10.2及更高版本中,名称_TICKS已更改为_TIME。关闭数据库实例时,将重置动态视图中的累积值。
有关更多信息,请参见Automatic Performance Statistics和v$OSStat。