set pagesize 100
column module format a60
column SORTS format 9999999
column row_cnt format 9999999
column execs format 99999999
column substr_sql format a50
column parsing_schema_name format a30
column row_cnt format 999999999
select module, count(*)
from v$sql
group by module
order by module;
select to_char(sysdate, 'hh24:mi:ss') curtime
, parsing_schema_name
, sql_id
, child_number
, substr(sql_text, 1, 100) sql_text
, executions
, round(elapsed_time/1000000) elapsed_sec
, round(elapsed_time/case when executions = 0 then 1 else executions end /1000000) ela_sec_per_exec
, buffer_gets
, trunc(buffer_gets/decode(executions, 0, 1, executions)) lio_per_exec
, rows_processed
, round(cpu_time/1000000) cpu_time
, round(user_io_wait_time/1000000) user_io_wait_time
, round(plsql_exec_time/1000000) plsql_exec_time
, round(java_exec_time/1000000) java_exec_time
, to_char(last_active_time, 'dd.mm.yyyy hh24:mi') last_active_time
, parse_calls
, disk_reads
, direct_writes
, fetches
-- , serializable_aborts
-- , end_of_fetch_count
-- , loads
-- , version_count
-- , invalidations
-- , avg_hard_parse_time
-- , application_wait_time
-- , concurrency_wait_time
-- , cluster_wait_time
, px_servers_executions
, sorts
, sharable_mem
-- , total_sharable_mem
, typecheck_mem
from v$sql
where upper(module) like upper('%&module%')
and parsing_schema_name like upper('%&schema%')
and round(elapsed_time/1000000) >= nvl('&secs', 0)
and sql_id like '%&sql_id%'
order by elapsed_time desc;
Mittwoch, Juli 07, 2010
current SQL
Zu meinen Hobbies gehört das Schreiben und Überarbeiten von SQL-Scripts. Aufgrund der häufigen Überarbeitungen ist es eigentlich nicht sinnvoll, solche Scripte in einem statischen Blog unterzubringen, aber da der Blog relativ gut erreichbar ist, während meine google-site in gesicherten Netzen oft geblockt wird, bringe ich dieses doch einmal hier unter. Besonders aufregend ist es nicht, aber für mich ziemlich hilfreich: zunächst suche ich mir die Module aus, die SQL-Queries abgesetzt haben, und dann folgt eine Query auf v$sql, die man auf ein Modul, ein Schema, eine Laufzeit in Sekunden oder eine SQL_ID einschränken kann.
Abonnieren
Kommentare zum Post (Atom)
Keine Kommentare:
Kommentar veröffentlichen