Oracle使用过程中的CPU高说明有资源消耗,你看看创建数据库后,是否创建的有短时间内刷新的物化视图?而物化视图的SQL性能又比较低,也会造成CPU不稳定。再就是是否存在周期性的I/O问题?I/O拥塞也会导致CPU高。
另外,关于你的SQL的优化,首先考虑在Where中不要使用子查询,其次,看看执行计划,只贴语句是很难进行调优的。
1、占用率高,多数是因为SQL语句的问题,可以使用以下语句进行排查
USE masterGO
--若要指定数据库就修改USE后面的部分
SELECT FROM sys[sysprocesses] WHERE [spid]>50 --AND DB_NAME([dbid])='gposdb'
SELECT COUNT() FROM [sys][dm_exec_sessions] WHERE [session_id]>50
2、检查程序是否存在高频率的循环
3、检查SQL是否有嵌套触发器,这个是最难检查,也是最难发现的
4、CPU本来就很次,需要更换更好的CPU
以上就是关于ORACLE数据库导致cpu使用率高的原因全部的内容,包括:ORACLE数据库导致cpu使用率高的原因、sql cpu占用率高怎么解决、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)