永发信息网

请教一个问题,Oracle m000进程,总是100%cpu的跑

答案:2  悬赏:40  手机版
解决时间 2021-04-02 07:08
  • 提问者网友:城市野鹿
  • 2021-04-01 18:35
请教一个问题,Oracle m000进程,总是100%cpu的跑
最佳答案
  • 五星知识达人网友:冷風如刀
  • 2021-04-01 19:10
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
全部回答
  • 1楼网友:杯酒困英雄
  • 2021-04-01 19:42
你的CPU差的话肯定跑满cup。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯