oracle 通过AWR的表来查询SQL信息

it2025-10-22  9

1、查询快照信息

select 

           snap_id,to_char(begin_interval_time,'DD-MON-YYYY HH24:MI:SS')  b_dttm,

           to_char(end_interval_time,'DD-MON-YYYY HH24:MI:SS')  e_dttm,

from   dba_hist_snapshot

where begin_interval_time>trunc(sysdate);

2、获取磁盘读高的SQL_ID

select  

           snap_id,disk_reads_delta reads_delta,

          executions_delta exec_delta,

          disk_reads_delta/decode(executions_delta,0,1,executions_delta) rds_exec_ratin,

          sql_id

from   dba_hist_sqlstat

where disk_reads_delta>10000

order by  disk_reads_delta desc;

3、根据SQL_ID获取SQL语句内容

select

           command_type,sql_text

from   dba_hist_sqltext

where sql_id='XXXXXXXXXX';

4、查看SQL语句的执行计划:

select * 

from table(DBMS_XPLAIN.DISPLAY_AWR('$SQL_ID'));

 

最新回复(0)