Skip to content
pvmehta.com

pvmehta.com

  • Home
  • About Me
  • Toggle search form
  • plan10g.sql Oracle
  • Nice notes on wait events Oracle
  • To Find Orphan OS processes. Linux/Unix
  • Drop all SPM baselines for SQL handle Oracle
  • sql_doing_fts.sql Oracle
  • age_alert.ksh aging out alert.log Linux/Unix
  • Oracle 11g RAC on OEL 5 and Vmware 2 Oracle
  • TNSNAMES entries details Oracle
  • Adding addidional hard drive and attach it to a linux box. Linux/Unix
  • Recovering lost SYS password Oracle
  • Restoring a user’s original password 1051962.101 Oracle
  • My FTP Job Scheduling for www.pvmehta.com PHP/MYSQL/Wordpress
  • Move WordPress site from one hosting service to other. PHP/MYSQL/Wordpress
  • Vivek Tuning for Row Locks. Oracle
  • Korn Shell Arithmatic Linux/Unix

Trace a SQL session from another session using ORADEBUG

Posted on 30-Sep-202530-Sep-2025 By Admin No Comments on Trace a SQL session from another session using ORADEBUG

Find the SPID from Oracle’s SID using below SQL.

REM **** This is used to get SPID from SID.
col username format a30
col machine format a20
col program format a40
accept _sid prompt 'Enter Oracle Session ID ->'
select a.sid, b.pid, b.spid, a.username,
a.program,a.machine
from v$session a,V$process b
where a.paddr = b.addr
and   a.sid = &_sid
/

Use ORADEBUG command as below.

oradebug setospid <SPID_FROM_QRY>
oradebug unlilimit
oradebug tracefile_name
oradebug event 10046 trace name context forever, level 12
—- Run some queries for which you want traces.
oradebug event 10046 trace name context off

Now, we have tracefile_name available. Use TKPROF utility to analyze the tracefile contents generated via 10046 trace as below: 

 🔹 What is tkprof?

tkprof is a utility that formats Oracle SQL trace files into human-readable reports.

Suppose you have a trace file: ora_1234.trc

Run:

tkprof ora_1234.trc report.prf sys=no sort=exeela,fchela
  • sys=no → exclude SYS schema SQL (noise)

  • sort=exeela,fchela → sort by execution elapsed time and fetch elapsed time

Now open report.prf to analyze performance.


🔹 Common tkprof Options

OptionPurpose
sys=noExcludes recursive SQL from SYS
sort=optionSorts SQLs by performance metric
explain=user/passwordAdds explain plan info
aggregate=yes/noWhether to group identical SQLs
insert=filename.sqlCreates a SQL script of all statements

🔹 Cheat Sheet – Most Useful sort Options

Sort OptionMeaning
prselaParse elapsed time
prscpuParse CPU time
exeelaExecution elapsed time
execpuExecution CPU time
fchelaFetch elapsed time
fetchpuFetch CPU time
diskDisk reads
queryConsistent gets
currentCurrent (buffer) gets
rowsRows processed

👉 Example:

tkprof ora_1234.trc top_sql.prf sys=no sort=exeela,disk,rows

This shows the most expensive SQLs by elapsed time, disk reads, and rows processed.

Oracle, SQL scripts

Post navigation

Previous Post: SQL Server Vs Oracle Architecture difference
Next Post: Postgres DB user and OS user.

Related Posts

  • My Minimum Tuning Programs Oracle
  • V$CONTROLFILE_RECORD_SECTION reference notes. Oracle
  • SQL_PLAN.sql for checking real execution plan Oracle
  • Another export with Query Oracle
  • TRUNCATE table and disabling referential constraints. Oracle
  • Oracle 10g Wait Model Oracle

Leave a Reply Cancel reply

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

Categories

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

Recent Posts

  • track_autoupgrade_copy_progress.sql01-Apr-2026
  • refre.sql for multitenant01-Apr-2026
  • prepfiles.sh for step by step generating pending statistics files10-Mar-2026
  • tracksqltime.sql05-Mar-2026
  • Complete Git Tutorial for Beginners25-Dec-2025
  • Postgres DB user and OS user.25-Dec-2025
  • Trace a SQL session from another session using ORADEBUG30-Sep-2025
  • 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

Archives

  • 2026
  • 2025
  • 2024
  • 2023
  • 2010
  • 2009
  • 2008
  • 2007
  • 2006
  • 2005
  • My FTP Job Scheduling for www.pvmehta.com PHP/MYSQL/Wordpress
  • backspace in SQL Plus not working then..? Linux/Unix
  • chk_space_SID.ksh Linux/Unix
  • Process Map for CPU and Memory for OS processes Linux/Unix
  • switchlogfile.sh Linux/Unix
  • cold backup scripts to copy locally Linux/Unix
  • This is im telling Kishore Oracle
  • CTAS with LONG Column for 9i and higher Oracle

Copyright © 2026 pvmehta.com.

Powered by PressBook News WordPress theme