Skip to content
pvmehta.com

pvmehta.com

  • Home
  • About Me
  • Toggle search form
  • Histogram information Oracle
  • Caching sequence in Memory Oracle
  • remove archfiles only when it is applied to DR rm_archfiles.sh Linux/Unix
  • Add new columns in dataframe Python/PySpark
  • How to Use DBMS_STATS to Move Statistics to a Different Database Oracle
  • find_cons.sql Oracle
  • 284785.1 How to check RAC Option is currently linked into the Oracle Binary Oracle
  • Remove duplicate rows from table Oracle
  • get_vmstat.ksh for Solaris Oracle
  • Linux CPU info. Linux/Unix
  • How to sort list of files on basis of their sizes. Linux/Unix
  • Oracle Release Explaination Oracle
  • get_aix_vmstat.ksh Oracle
  • to see when crontab is changed. Linux/Unix
  • sid_wise_sql.sql Oracle

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

Option Purpose
sys=no Excludes recursive SQL from SYS
sort=option Sorts SQLs by performance metric
explain=user/password Adds explain plan info
aggregate=yes/no Whether to group identical SQLs
insert=filename.sql Creates a SQL script of all statements

🔹 Cheat Sheet – Most Useful sort Options

Sort Option Meaning
prsela Parse elapsed time
prscpu Parse CPU time
exeela Execution elapsed time
execpu Execution CPU time
fchela Fetch elapsed time
fetchpu Fetch CPU time
disk Disk reads
query Consistent gets
current Current (buffer) gets
rows Rows 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

  • 10g RAC: Troubleshooting CRS Root.sh Problems Oracle
  • DBMS_UTILITY PACKAGE Oracle
  • Locktree.sql Oracle
  • longtx.sql Oracle
  • FRA Information. Oracle
  • Find sort details from Db find_sort.sql 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 (150)
  • MYSQL (5)
  • Oracle (403)
  • PHP/MYSQL/Wordpress (10)
  • POSTGRESQL (1)
  • Power-BI (0)
  • Python/PySpark (7)
  • RAC (18)
  • rman-dataguard (26)
  • shell (151)
  • SQL scripts (349)
  • SQL Server (6)
  • Uncategorized (5)
  • Videos (0)

Recent Posts

  • Key Management in Oracle: The Core Issue: Missing Master Key12-May-2026
  • SAT Mathematics 10 questions and answer at the end.30-Apr-2026
  • top 10 AI news today30-Apr-2026
  • runon_allpdbs_show_conname.sh23-Apr-2026
  • runon_allcdbs_find_pdbs.sh23-Apr-2026
  • Running PDB on single node in RAC09-Apr-2026
  • find_arc.sql09-Apr-2026
  • pvm_pre_change.sql08-Apr-2026
  • find_encr_wallet.sql08-Apr-2026
  • find_pdbs.sql08-Apr-2026

Archives

  • 2026
  • 2025
  • 2024
  • 2023
  • 2010
  • 2009
  • 2008
  • 2007
  • 2006
  • 2005
  • fdisk -l explaination about Primary-Logical-Extended Partitions Linux/Unix
  • Oracle 10g Wait Model Oracle
  • longtx.sql with the flag whether session is blocking any DML locks or not. Oracle
  • catting.sh Linux/Unix
  • Find All internal Parameters Oracle
  • SQL_PROFILE – I explaination Oracle
  • Locally Managed Tablespace and Dictionary managed tablespace (LMT-DMT) Oracle
  • get_vmstat_solaris Oracle

Copyright © 2026 pvmehta.com.

Powered by PressBook News WordPress theme