Oracle CPU使用率过高问题处理

1.下载Process Explorer

2.打开Process Explorer,查看CPU使用情况最高的进程

3.双击该进程,查看详情

\

4. 获取cpu使用最好的线程tid

5. 查询sql_id

sql 复制代码
select sql_id from v$session  
  where paddr in(  
    select addr from v$process  
    where spid in('16796','11972','9812','11652','5484')  
 )  

6.根据5中的sql_id查询具体执行占用CPU过高的sql语句

sql 复制代码
select * from v$sqlarea where sql_id in(sql_id1,sql_id2,sql_id3...);  

7.查询sid和serial#

sql 复制代码
SELECT sid,serial#,sql_id from v$session where sql_id in(sql_id1,sql_id2,sql_id3...) 

8.杀掉进程

sql 复制代码
alter system kill session 'sid,serial#';  

或批量杀进程

sql 复制代码
SELECT 'alter system kill session '''||sid||','||serial#||''';' from v$session where sql_id in(sql_id);  

9.分析SQL进行优化

相关推荐
leegong231114 小时前
PostgreSQL 初中级认证可以一起学吗?
数据库
秋野酱5 小时前
如何在 Spring Boot 中实现自定义属性
java·数据库·spring boot
weisian1516 小时前
Mysql--实战篇--@Transactional失效场景及避免策略(@Transactional实现原理,失效场景,内部调用问题等)
数据库·mysql
AI航海家(Ethan)6 小时前
PostgreSQL数据库的运行机制和架构体系
数据库·postgresql·架构
Kendra9199 小时前
数据库(MySQL)
数据库·mysql
时光书签10 小时前
Mongodb副本集群为什么选择3个节点不选择4个节点
数据库·mongodb·nosql
人才程序员11 小时前
【C++拓展】vs2022使用SQlite3
c语言·开发语言·数据库·c++·qt·ui·sqlite
极客先躯11 小时前
高级java每日一道面试题-2025年01月23日-数据库篇-主键与索引有什么区别 ?
java·数据库·java高级·高级面试题·选择合适的主键·谨慎创建索引·定期评估索引的有效性
指尖下的技术11 小时前
Mysql面试题----MyISAM和InnoDB的区别
数据库·mysql
永远是我的最爱12 小时前
数据库SQLite和SCADA DIAView应用教程
数据库·sqlite