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进行优化

相关推荐
打鱼又晒网32 分钟前
【MySQL】数据库精细化讲解:内置函数知识穿透与深度学习解析
数据库·mysql
王小小鸭37 分钟前
【开发小技巧11】用经典报表实现badge list效果,根据回显内容用颜色加以区分
oracle·oracle apex
大白要努力!38 分钟前
android 使用SQLiteOpenHelper 如何优化数据库的性能
android·数据库·oracle
tatasix1 小时前
MySQL UPDATE语句执行链路解析
数据库·mysql
南城花随雪。2 小时前
硬盘(HDD)与固态硬盘(SSD)详细解读
数据库
儿时可乖了2 小时前
使用 Java 操作 SQLite 数据库
java·数据库·sqlite
懒是一种态度2 小时前
Golang 调用 mongodb 的函数
数据库·mongodb·golang
天海华兮2 小时前
mysql 去重 补全 取出重复 变量 函数 和存储过程
数据库·mysql
gma9993 小时前
Etcd 框架
数据库·etcd
爱吃青椒不爱吃西红柿‍️3 小时前
华为ASP与CSP是什么?
服务器·前端·数据库