Skip to content
pvmehta.com

pvmehta.com

  • Home
  • About Me
  • Toggle search form
  • eplan9i.sql Oracle
  • RAC 11g with vmware Oracle
  • get_vmstat.ksh for Solaris Oracle
  • online_ts_bkup.sql Oracle
  • Finding locked objects Oracle
  • Monitor and Trace Unix processes using truss Linux/Unix
  • How does one overcome the Unix 2 Gig file limit? Linux/Unix
  • find_err.sql for finding errors from dba_errors. Oracle
  • find checksum of a file. Linux/Unix
  • DBMS_STATS Metalinks Notes Oracle
  • findx.sql /* Find Indexes on specified USER.TABLE_NAME */ Oracle
  • good linux notes Linux/Unix
  • find the files that are 1 day old. Linux/Unix
  • Changing default shell Linux/Unix
  • Convert multiple rows to single column Oracle

To find explain plan for a statement that occurred in past.

Posted on 27-Sep-2006 By Admin No Comments on To find explain plan for a statement that occurred in past.

Find hash value & time when this plan was taken for particular sql id.

Filename : fphv.sql

REM *** Find Plan Hash value

column plan_hash_value format 999999999999

accept v_sqlid prompt ‘Enter SQL_ID : ‘

select distinct sql_id, plan_hash_value, to_char(timestamp, ‘DD-MON-RRRR:HH24:MI:SS’) from dba_hist_sql_plan

where sql_id=’&v_sqlid’;

Then, Apply sql id and plan_hash_value for a unique plan.

REM fplan.sql

REM Find execution plan from dba_hist_sql_plan for a specific SQL_ID and PLAN_HASH_VALUE.

column plan_hash_value format 999999999999

accept v_sqlid prompt ‘Enter SQL_ID : ‘

accept v_plan_hash_value prompt ‘Enter PLAN Hash Value : ‘

SELECT LPAD(‘ ‘,2*(LEVEL-1))||operation||’ ‘||options ||’ ‘||object_name ||’ ‘|| DECODE(id, 0, ‘Cost = ‘||position)

“Query Plan”

FROM dba_hist_sql_plan

START WITH id = 0 and sql_id=’&v_sqlid’ and plan_hash_value=&v_plan_hash_value

CONNECT BY PRIOR id = parent_id and sql_id=’&v_sqlid’ and plan_hash_value=&v_plan_hash_value;

SQl_ID and SQL statement you can get from currwaitobj.sql

set lines 120 pages 200

column event format a30

column object_type format a14

column object_name format a30

column owner format a10

column sql_text format a120

spool currwaitobj

accept event_name prompt ‘Enter fraction of event to trace : ‘

accept start_time1 prompt ‘Start Time in (DD-MON-RRRR:HH24:MI format) : ‘

accept stop_time1 prompt ‘Stop Time in (DD-MON-RRRR:HH24:MI format) : ‘

select distinct a.event

from v$active_session_history a

where sample_time between to_date(‘&start_time1’, ‘DD-MON-RRRR:HH24:MI’) and to_date(‘&stop_time1’, ‘DD-MON-RRRR:HH24:MI’);

select distinct a.event, s.sql_id, s.sql_text

from v$active_session_history a, v$sqlarea s

where s.sql_id = a.sql_id

and lower(a.event) like lower(‘%&event_name%’)

and sample_time between to_date(‘&start_time1’, ‘DD-MON-RRRR:HH24:MI’) and to_date(‘&stop_time1’, ‘DD-MON-RRRR:HH24:MI’)

order by s.sql_id;

spool off

Oracle, SQL scripts

Post navigation

Previous Post: currwaitobj.sql SQl_ID and SQL statement you can get from currwaitobj.sql
Next Post: How to find where datafile is created dbf_info.sql

Related Posts

  • Oracle 11g Environment Setup Oracle
  • Find_table_size.sql Oracle
  • _B_TREE_BITMAP_PLANS issue during 8.1.7 to 9.2.0.8 upgrade Oracle
  • currwait.sql Oracle
  • OEM-troubleshooting on 20-MAY-08 Oracle
  • TOP-N Sql to find Nth max or Top N rows Oracle

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Categories

  • Ansible (0)
  • AWS (2)
  • Azure (1)
  • Linux/Unix (149)
  • MYSQL (5)
  • Oracle (392)
  • PHP/MYSQL/Wordpress (10)
  • POSTGRESQL (0)
  • Power-BI (0)
  • Python/PySpark (7)
  • RAC (17)
  • rman-dataguard (26)
  • shell (149)
  • SQL scripts (341)
  • SQL Server (6)
  • Uncategorized (0)
  • Videos (0)

Recent Posts

  • SQL Server Vs Oracle Architecture difference25-Jul-2025
  • SQL Server: How to see historical transactions25-Jul-2025
  • SQL Server: How to see current transactions or requests25-Jul-2025
  • T-SQL Vs PL/SQL Syntax25-Jul-2025
  • Check SQL Server edition25-Jul-2025
  • Checking SQL Server Version25-Jul-2025
  • Oracle vs MYSQL Architecture differences (For DBAs)24-Jul-2025
  • V$INSTANCE of Oracle in MYSQL24-Jul-2025
  • Day to day MYSQL DBA operations (Compared with Oracle DBA)24-Jul-2025
  • MYSQL and Oracle Comparison for Oracle DBA24-Jul-2025

Archives

  • 2025
  • 2024
  • 2023
  • 2010
  • 2009
  • 2008
  • 2007
  • 2006
  • 2005
  • Default User Profile Oracle
  • longtx.sql with the flag whether session is blocking any DML locks or not. Oracle
  • Rman Notes -1 Oracle
  • Sending email with file attachment. Linux/Unix
  • RAC with RHEL4 and 11g Oracle
  • Adding addidional hard drive and attach it to a linux box. Linux/Unix
  • Find execution plan from dba_hist_sql_plan for a specific SQL_ID and PLAN_HASH_VALUE fplan.sql Oracle
  • Passing from Unix to PLSQL using bind variables Linux/Unix

Copyright © 2025 pvmehta.com.

Powered by PressBook News WordPress theme