暂无图片
查询当前和历史的IO 占用高sql
我来答
分享
左右
2023-02-18
查询当前和历史的IO 占用高sql

oracle  11gr2 数据库

有那么些sql 查询io 资源占用高的sql语句,并且能定位是那个用户、ip、主机发起,谢谢。

我来答
添加附件
收藏
分享
问题补充
1条回答
默认
最新
张sir

A:利用awr报告

1、打一份awr报告

2、找到top sql

3、查看top sql中的order by read。

B:利用sql语句

select a.sql_id,
a.module,
a.diskread,
a.exec,
decode(a.exec, 0, to_number(null), a.diskread / a.exec) diskread_one,
(a.cput/1000000)/elap*100 CPU,
a.elap,
b.sql_text
from dba_hist_sqltext b,
(select sql_id,
max(module) module,
sum(disk_reads_delta) diskread,
sum(executions_delta) exec,
sum(cpu_time_delta) cput,
sum(elapsed_time_delta) / 1000000 elap
from dba_hist_sqlstat
where dbid = 1000919065
and instance_number = 1
and 6504 and snap_id group by sql_id) a
where a.sql_id = b.sql_id
order by diskread desc;

暂无图片 评论
暂无图片 有用 1
暂无图片
回答交流
提交
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
暂无图片墨值悬赏