Showing posts with label SQL Tuning. Show all posts
Showing posts with label SQL Tuning. Show all posts
Friday, July 15, 2016
MEMORY USED BY SQL STATEMENT
select machine,to_char(SQL_EXEC_START,'DD-MON-YY HH24:MI:SS') runtime,
pga_allocated
from dba_hist_active_sess_history
where sql_id = '&sql_id';
EXAMPLE OUTPUT:
MACHINE RUNTIME PGA_ALLOCATED
------------------------- -------------------- ----------------
MYPCNAME 13-JUL-16 16:18:40 807,153,664
MYPCNAME 13-JUL-16 16:18:40 329,003,008
MYPCNAME 13-JUL-16 16:18:40 274,280,448
MYPCNAME 13-JUL-16 16:18:40 215,887,872
MYPCNAME 13-JUL-16 16:18:40 204,615,680
Tuesday, September 22, 2015
SQL Outlines or SQL Profiles
SQL OUTLINES or PROFILES
set lines 170
set pages 100
col created format a14
col type format a6
col status format a10
col fm format a3
col profile_name format a30
col sql_text format a50
col comp_data format a50
SELECT created,
type,
status,
force_matching fm,
profile_name,
sql_text,
comp_data
FROM DBA_SQL_PROFILES PROF,
DBMSHSXP_SQL_PROFILE_ATTR ATTR
WHERE prof.name = attr.profile_name
ORDER BY status, created desc;
set lines 170
set pages 100
col created format a14
col type format a6
col status format a10
col fm format a3
col profile_name format a30
col sql_text format a50
col comp_data format a50
SELECT created,
type,
status,
force_matching fm,
profile_name,
sql_text,
comp_data
FROM DBA_SQL_PROFILES PROF,
DBMSHSXP_SQL_PROFILE_ATTR ATTR
WHERE prof.name = attr.profile_name
ORDER BY status, created desc;
Parallel Query Processes - Parent / Child Details
Parallel Process Details including Master/Slave relationships
SQL
set lines 200
set pages 100
col username format a10
col qcslave format a10
col slaveset format a8
col program format a30
col sid format a5
col slvinst format a7
col state format a8
col waitevent format a30
col qcsid format a5
col qcinst format a6
col reqdop format 999
col actdop format 999
col secelapsed format 999,999
SELECT DECODE(px.qcinst_id,NULL,username, ' - '||LOWER(SUBSTR(pp.SERVER_NAME,LENGTH(pp.SERVER_NAME)-4,4) ) ) USERNAME,
DECODE(px.qcinst_id,NULL, 'QC', '(Slave)') "QCSLAVE" ,
TO_CHAR( px.server_set) SLAVESET,
s.program PROGRAM,
TO_CHAR(s.SID) SID,
TO_CHAR(px.inst_id) SLVINST,
DECODE(sw.state,'WAITING', 'WAIT', 'NOT WAIT' ) STATE,
CASE sw.state WHEN 'WAITING' THEN SUBSTR(sw.event,1,30) ELSE NULL END WAITEVENT ,
DECODE(px.qcinst_id, NULL ,TO_CHAR(s.SID) ,px.qcsid) QCSID,
TO_CHAR(px.qcinst_id) QCINST,
px.req_degree REQDOP,
px.DEGREE ACTDOP,
DECODE(px.server_set,'',s.last_call_et,'') SECELAPSED
FROM gv$px_session px,
gv$session s,
gv$px_process pp,
gv$session_wait sw
WHERE px.SID=s.SID (+)
AND px.serial#=s.serial#(+)
AND px.inst_id = s.inst_id(+)
AND px.SID = pp.SID (+)
AND px.serial#=pp.serial#(+)
AND sw.SID = s.SID
AND sw.inst_id = s.inst_id
ORDER BY DECODE(px.QCINST_ID, NULL, px.INST_ID, px.QCINST_ID),
px.QCSID,
DECODE(px.SERVER_GROUP, NULL, 0, px.SERVER_GROUP),
px.SERVER_SET,
px.INST_ID
SQL
set lines 200
set pages 100
col username format a10
col qcslave format a10
col slaveset format a8
col program format a30
col sid format a5
col slvinst format a7
col state format a8
col waitevent format a30
col qcsid format a5
col qcinst format a6
col reqdop format 999
col actdop format 999
col secelapsed format 999,999
SELECT DECODE(px.qcinst_id,NULL,username, ' - '||LOWER(SUBSTR(pp.SERVER_NAME,LENGTH(pp.SERVER_NAME)-4,4) ) ) USERNAME,
DECODE(px.qcinst_id,NULL, 'QC', '(Slave)') "QCSLAVE" ,
TO_CHAR( px.server_set) SLAVESET,
s.program PROGRAM,
TO_CHAR(s.SID) SID,
TO_CHAR(px.inst_id) SLVINST,
DECODE(sw.state,'WAITING', 'WAIT', 'NOT WAIT' ) STATE,
CASE sw.state WHEN 'WAITING' THEN SUBSTR(sw.event,1,30) ELSE NULL END WAITEVENT ,
DECODE(px.qcinst_id, NULL ,TO_CHAR(s.SID) ,px.qcsid) QCSID,
TO_CHAR(px.qcinst_id) QCINST,
px.req_degree REQDOP,
px.DEGREE ACTDOP,
DECODE(px.server_set,'',s.last_call_et,'') SECELAPSED
FROM gv$px_session px,
gv$session s,
gv$px_process pp,
gv$session_wait sw
WHERE px.SID=s.SID (+)
AND px.serial#=s.serial#(+)
AND px.inst_id = s.inst_id(+)
AND px.SID = pp.SID (+)
AND px.serial#=pp.serial#(+)
AND sw.SID = s.SID
AND sw.inst_id = s.inst_id
ORDER BY DECODE(px.QCINST_ID, NULL, px.INST_ID, px.QCINST_ID),
px.QCSID,
DECODE(px.SERVER_GROUP, NULL, 0, px.SERVER_GROUP),
px.SERVER_SET,
px.INST_ID
Thursday, December 5, 2013
AWR Interval and Retention
SQL
select
extract( day from snap_interval) *24*60+
extract( hour from snap_interval) *60+
extract( minute from snap_interval ) "Snapshot Interval",
extract( day from retention) *24*60+
extract( hour from retention) *60+
extract( minute from retention ) "Retention Interval"
from dba_hist_wr_control;
select
extract( day from snap_interval) *24*60+
extract( hour from snap_interval) *60+
extract( minute from snap_interval ) "Snapshot Interval",
extract( day from retention) *24*60+
extract( hour from retention) *60+
extract( minute from retention ) "Retention Interval"
from dba_hist_wr_control;
SAMPLE OUTPUT
Snapshot Interval Retention Interval
----------------- ------------------
60 10080
Snapshot Interval Retention Interval
----------------- ------------------
60 10080
Tuesday, January 29, 2013
Explain Plan for any SQL ID
set echo on
set lines 300 pages 0
set trimspool on
--spool explain_plan.out
select t.*
from v$sql s,
table(dbms_xplan.display_cursor(s.sql_id,
s.child_number, 'TYPICAL ALLSTATS LAST')) t
where s.sql_id = '&sql_id';
EXAMPLE OUTPUT
==============
SQL_ID 1fd4dhwcxj9c4, child number 1
-------------------------------------
select shadow from eisaudittrail where id = :1
Plan hash value: 3922317436
----------------------------------------------------------------------------------------------
| Id | Operation | Name | E-Rows |E-Bytes| Cost (%CPU)| E-Time |
----------------------------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | | | 3 (100)| |
| 1 | TABLE ACCESS BY INDEX ROWID| EISAUDITTRAIL | 1 | 93 | 3 (0)| 00:00:01 |
|* 2 | INDEX UNIQUE SCAN | PK_AUDITTRAIL | 1 | | 2 (0)| 00:00:01 |
----------------------------------------------------------------------------------------------
Predicate Information (identified by operation id):
---------------------------------------------------
2 - access("ID"=:1)
Subscribe to:
Posts (Atom)