ORACLE数据库导致cpu使用率高的原因

用一台机子做服务器,装的ORACLE数据库,但是CPU的使用率不稳定,每隔一分钟或多长时间,cpu的使用率就一下子高了很多,可达90%多,在我们的机子上运行程序时,那CP... 用一台机子做服务器,装的ORACLE数据库,但是CPU的使用率不稳定,每隔一分钟或多长时间,cpu的使用率就一下子高了很多,可达90%多,在我们的机子上运行程序时,那CPU的使用率就更高了,就算不读取数据,cpu的使用率也是忽高忽低的。这是怎么回事呀?有具体的原因或解决办法吗?
不是什么内存,注册表之类的问题哦,也不是右键的。 不是自己的机子做服务器。也不是开机时cpu高,服务器就一直开启着,oracle也一直运行着,在不取数据,不执行操作时,Oracle占内存就不稳定;在运行项目时,Oracle更不稳定了,cpu更是忽上忽下的。
select count(*) from jam_status_detect_5 t
where
t.alarm_rank != -1
and t.alarm_confirm_status = 0
and t.status_time >=(select max(s.status_time) from jam_status_detect_5 s )- {0}/24
and t.status_time <=(select max(s.status_time) from jam_status_detect_5 s 这条语句该怎样优化 占用时间是3s多
展开
 我来答
百度网友cb8b23a34
2009-08-07
知道答主
回答量:9
采纳率:0%
帮助的人:4.3万
展开全部
Oracle使用过程中的CPU高说明有资源消耗,你看看创建数据库后,是否创建的有短时间内刷新的物化视图?而物化视图的SQL性能又比较低,也会造成CPU不稳定。再就是是否存在周期性的I/O问题?I/O拥塞也会导致CPU高。

另外,关于你的SQL的优化,首先考虑在Where中不要使用子查询,其次,看看执行计划,只贴语句是很难进行调优的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
liweixixihaha
2009-08-05 · TA获得超过352个赞
知道小有建树答主
回答量:364
采纳率:0%
帮助的人:217万
展开全部
自己的机子做服务器要把oracle设置成手动的启动,否则你开机就运行很多的资源所以你的cpu会很高。在运行里面输入services.msc进行设置oracle的服务运行状态。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
21147813
推荐于2016-03-17 · TA获得超过364个赞
知道小有建树答主
回答量:400
采纳率:0%
帮助的人:0
展开全部
select count(*) from jam_status_detect_5 t
where
t.alarm_rank != -1
and t.alarm_confirm_status = 0
and t.status_time >=(select max(s.status_time) from jam_status_detect_5 s )- {0}/24
and t.status_time <=(select max(s.status_time) from jam_status_detect_5 s

一条语句遍历三次 要是jam_status_detect_5这张表数据量大的话 那简直就是灾难。。你完全可以只使用一次遍历实现

另外 检查job 估计是有定时任务在执行 而这任务很耗时
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式