学习啦>学习电脑>选购与维护>选购指南>

cpu占用过高如何减少

时间: 林辉766 分享

  cpu有时候会出现占用过高的情况!那么我们要怎么样去减少呢?下面由学习啦小编给你做出详细的cpu占用过高减少方法介绍!希望对你有帮助!

  cpu占用过高减少方法一

  一般cpu占用效高都是排序、sql解析和全表扫描,这里首先需要找出占用cpu最高的sql,然后查看他的执行计划

  比如:看执行计划是走索引还是全表扫描(刚开始查看top发现占用同样多的CPU的进程很多,还以为是oracle 的bug, 后来发现不是)。

  处理过程:

  1, 根据操作系统进程查找Oracle数据库中占用最多CPU的SQL

  使用Linux系统 "top命令->P "查出占用cpu最高的进程PID

  操作如下:在sqlplus中执行如下sql:

  SQL>

  SELECT

  sql_text

  FROM v$sqltext a

  WHERE (a.hash_value, a.address) IN

  (SELECT DECODE(sql_hash_value, 0, prev_hash_value, sql_hash_value),

  DECODE(sql_hash_value, 0, prev_sql_addr, sql_address)

  FROM v$session b

  WHERE b.paddr =

  (SELECT addr FROM v$process c WHERE c.spid = '&pid'))

  ORDER BY piece ASC

  其中&pid 是使用top 查看系统中进程占用CPU极高的PID

  找到SQL语句进行相应的调整优化

  2,分析找到的sql语句,如查看sql执行计划。

  总结

  这里的问题是查询的where 条件字段没有在索引里面,导致查询慢。经过重建并增加相关字段到索引解决

  但有点疑惑的是原来库上查询语句里where条件字段也没有在索引里面(新库是使用expdp导出再导入到新库的),查询还正常,CPU也不高,oracle数据库真是博大精深,好多问题还有待研究。

  cpu占用过高减少方法二

  ⒈)软件方面导致的CPU使用率高

  这方面主要涉及到的是系统问题,比如系统过于臃肿,开启过多程序以及电脑中病毒木马等等都会产生CPU使用率过高,而导致电脑速度慢。解决办法主要是围绕系统优化,优化开机启动项、尽量避免开启太多程序等等。

  ⒉)硬件方面导致的CPU使用率高

  其实硬件方面决定着比较大的关系,比如如果电脑还是老爷机,采用最初的单核赛扬级处理器,那么这样的电脑,在多开启几个网页的情况下就容易导致CPU使用率过高,不管怎么优化系统,这个问题始终无法很好解决,这主要是因为硬件本身过低造成的。

  ⑴.排除病毒感染

  如果电脑中病毒或马的情况下,木马恶意程序很可能会大量占用CPU资源,尤其是一些顽固病毒木马,一直都在恶意循环活动,感染各类系统文件,大量占用CPU资源,这种情况就很容易出现CPU使用率过高,即便是较高的CPU也经不起反复大量的恶意程序运行,因此如果发现CPU使用过高,首先应高想下是否是电脑中病毒了,建议安装如金山杀毒进行全面查杀。

  ⑵.排除病毒感染后,就需要从系统优化入手了,首先优化开启启动项,尽量让不需要使用到的软件不开机自动启动,比如一些播放器软件、银行安全插件等,这些完全可以需要的时候再开启,没必要开机启动。关于如何优化开机启动项.

  ⑶关闭不需要的程序进程

看了“ cpu占用过高如何减少”文章的还看了:

1.如何解决cpu使用率过高

2.cpu占用过高究竟该怎么办呢

3.什么原因导致系统CPU占用过高、将如何处理

4.cpu占用率过高怎么办

5.w7cpu占用过高怎么办

6.如何减低cpu使用率

900925