如何获取Oracle sql monitor报告

ql_monitor监控执行时间超过5s的sql,或者开启并行的sql,或者加了/+monitor/的sql,应该是记录实例启动以来的sql

set linesize 200
set pages 30
col sql_text format a50 trunc 
col inst_id format 99
col username format a10 trunc
col sql_id format a14
col date_start format a20
col status format a6
col sql_exec_id format 999999999
col px_req format 999
col px_real format 999
select * from
(
select m.inst_id,m.username,m.sql_id, to_char(sql_exec_start, 'yyyymmdd HH24:MI:SS') date_start, 
       substr(status,1,5) as status, sql_exec_id,px_servers_requested px_req,px_servers_allocated as px_real,
       round(m.elapsed_time/1000000) "Elapsed(s)", round(m.CPU_TIME/1000000) "Cpu(s)"
       , sql_text
from gv$sql_monitor m
where m.process_name='ora'
--m.PX_SERVER# is null
--order by elapsed_time desc 
order by sql_exec_start desc
)
where rownum<=20;

查看sql_monitor的text报告

set echo off
set linesize 10000 pages 6000
set long 20000000
set longchunksize 20000000
set trimout on trims on term off head off
select DBMS_SQLTUNE.REPORT_SQL_MONITOR(sql_id       => 'dy2stq5z7nqxf',
                                       SQL_EXEC_ID  => 16777216,
                                       report_level => 'ALL',
                                       type         => 'text') as report
  from dual;

posted @   赖顺欠  阅读(96)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
· AI Agent开发,如何调用三方的API Function,是通过提示词来发起调用的吗
点击右上角即可分享
微信分享提示