Skip to content
pvmehta.com

pvmehta.com

  • Home
  • About Me
  • Toggle search form
  • Check SQL Server edition SQL Server
  • Changing the Global Database Name Oracle
  • rm_backup_arch_file.ksh Linux/Unix
  • When error comes for temporary tablespace with version <= 9i Oracle
  • Logic to chech # of parameters command line parameters Linux/Unix
  • xargs use Linux/Unix
  • Add new columns in dataframe Python/PySpark
  • ORA-1841 Error Connecting to Upgraded Database After Set PASSWORD_LIFE_TIME Oracle
  • How to connect to Oracle Database with Wallet with Python. Oracle
  • Adding addidional hard drive and attach it to a linux box. Linux/Unix
  • SQL Server Vs Oracle Architecture difference SQL Server
  • ext#.sql Oracle
  • Adding or Dropping Online Redo Log Files When Physical Standby in place Oracle
  • Important Solaris Commands Linux/Unix
  • cold backup scripts to copy locally 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

  • New OFA for 11g Oracle
  • findobj.sql Oracle
  • Monitor Long Running Job Oracle
  • Drop tempfiles from database Oracle
  • How to specify 2 arch location to avoid any kind of DB hanging. Oracle
  • Metalink Note: Note:250655.1 : ADDM Basics USING THE AUTOMATIC DATABASE DIAGNOSTIC MONITOR 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 (393)
  • PHP/MYSQL/Wordpress (10)
  • POSTGRESQL (1)
  • Power-BI (0)
  • Python/PySpark (7)
  • RAC (17)
  • rman-dataguard (26)
  • shell (149)
  • SQL scripts (342)
  • SQL Server (6)
  • Uncategorized (0)
  • Videos (0)

Recent Posts

  • 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
  • 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

Archives

  • 2025
  • 2024
  • 2023
  • 2010
  • 2009
  • 2008
  • 2007
  • 2006
  • 2005
  • Consolidated Reference List Of Notes For Migration / Upgrade Service Requests -ID 762540.1 Oracle
  • Standby Database Behavior when a Datafile is Resized on the Primary Database Note:123883.1 Oracle
  • get_aix_vmstat.ksh Oracle
  • How to calculate PROCESSES parameter Oracle
  • Oracle Recommended Patches — Oracle Database ID 756671.1 Oracle
  • SQL Tracker by SID sqltrackerbysid.sql Oracle
  • Load SPM baseline from AWR Oracle
  • TNSNAMES entries details Oracle

Copyright © 2026 pvmehta.com.

Powered by PressBook News WordPress theme