oraclecpu数怎么计算

oraclecpu数怎么计算,第1张

Oracle CPU数的计算是指计算Oracle数据库系统中所使用的CPU数量。计算Oracle CPU数的方法有很多,但是最常用的方法是使用Oracle自带的v$resource_limit视图。通过查询v$resource_limit视图,可以获得Oracle数据库系统中所使用的CPU数量。另外,还可以使用Oracle的 *** 作系统接口(OSI)来获取Oracle CPU数量。OSI可以查询 *** 作系统中的CPU数量,从而获取Oracle CPU数量。最后,还可以使用Oracle自带的v$cpu_info视图来获取Oracle CPU数量。通过查询v$cpu_info视图,可以获取Oracle数据库系统中所使用的CPU数量。

这个没办法处理优化,只能是提高电脑配置,或者是换其他版本的oracle,建议使用10g。

解释:oracle运行程序本身就比较占内存,并且要启动三个实例才可以运行,所以建议可以更换个大的内存条(最少4G),安装64位系统。

备注:建议不用oracle的情况下可以把oracle的进程都停掉,减少内存占用。

topas/top 看下是不是oracle进程占用的cpu。

然后查看下oracle数据库中都在跑哪些语句

多数都是效率较差的sql语句导致cpu使用率过高的,一般通过优化sql即可解决。

可用如下语句查看哪些执行时间较长的sql:

Select b.USERNAME,

b.SID,

a.SQL_ID,

a.SQL_TEXT,

a.sql_fulltext,

b.EVENT,

a.executions,

-- trunc(((decode(a.EXECUTIONS,0,0,a.cpu_time / a.executions)) / 10000)) c_time, ---单位零点秒

trunc(((decode(a.EXECUTIONS,0,0,a.ELAPSED_TIME / a.executions)) / 10000)) e_time,

--trunc(cpu_time/10000) cpu_time,

trunc(a.ELAPSED_TIME/10000) ELAPSED_TIME ,

a.DISK_READS,

a.BUFFER_GETS,

b.MACHINE,

b.PROGRAM

From v$sqlarea a, v$session b

Where executions >=0

And b.status = 'ACTIVE'

and a.SQL_ID = b.SQL_ID

-- and b.USERNAME='DB_WTDZ'

-- and trunc(((a.cpu_time / a.executions) / 1000000))>5

Order By e_time desc


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6930812.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-30
下一篇 2023-03-30

发表评论

登录后才能评论

评论列表(0条)

保存