ORACLE优化查询资源消耗的语句
1> SQL ordered by Gets
1 select * from 2 (select substr(sql_text,1,40) sql, buffer_gets, 3 executions, buffer_gets/executions "Gets/Exec", 4 hash_value,address 5 from v$sqlarea 6 where buffer_gets > 0 and executions>0 7 order by buffer_gets desc) 8 where rownum <= 10 ;
2> SQL ordered by Reads
1 select * from 2 (select substr(sql_text,1,40) sql, disk_reads, 3 executions, disk_reads/executions "Reads/Exec", 4 hash_value,address 5 from v$sqlarea where disk_reads > 0 and executions >0 6 order by disk_reads desc) where rownum <= 10;
3> SQL ordered by Executions
1 select * from 2 (select substr(sql_text,1,40) sql, executions, 3 rows_processed, rows_processed/executions "Rows/Exec", 4 hash_value,address 5 from v$sqlarea where executions > 0 6 order by executions desc) where rownum <= 10 ;
4> SQL ordered by Parse Calls
1 select * from 2 (select substr(sql_text,1,40) sql, parse_calls, 3 executions, hash_value,address 4 from v$sqlarea where parse_calls > 0 5 order by parse_calls desc) where rownum <= 10 ;
5> Running Time top 10 sql
1 select * from 2 (select t.sql_fulltext, 3 (t.last_active_time-to_date(t.first_load_time,'yyyy-mm-dd hh24:mi:ss'))*24*60, 4 disk_reads,buffer_gets,rows_processed, 5 t.last_active_time,t.last_load_time,t.first_load_time 6 from v$sqlarea t order by t.first_load_time desc) 7 where rownum < 10;