2026-03-12 20:23:15
This commit is contained in:
69
vg/sid_sqltrace.sql
Normal file
69
vg/sid_sqltrace.sql
Normal file
@@ -0,0 +1,69 @@
|
||||
/*
|
||||
This script will set the SQL Trace on in passed SID.
|
||||
|
||||
|
||||
CONN sys/password AS SYSDBA; -- User must have SYSDBA.
|
||||
|
||||
oradebug SETORAPNAME PR00 -- Debug process by name.
|
||||
ORADEBUG SETMYPID; -- Debug current session.
|
||||
ORADEBUG SETOSPID 1234; -- Debug session with the specified OS process.
|
||||
ORADEBUG SETORAPID 123456; -- Debug session with the specified Oracle process ID.
|
||||
|
||||
ORADEBUG TRACEFILE_NAME; -- Display the current trace file.
|
||||
oradebug UNLIMIT -- Set trace to unlimited size.
|
||||
|
||||
ORADEBUG EVENT 10046 TRACE NAME CONTEXT FOREVER, LEVEL 12; -- Start SQL Trace
|
||||
ORADEBUG EVENT 10046 TRACE NAME CONTEXT OFF; -- Stop SQL Trace
|
||||
|
||||
ORADEBUG EVENT 10046 TRACE NAME CONTEXT FOREVER, LEVEL 12; -- Start Optimizer Trace
|
||||
|
||||
exec dbms_monitor.session_trace_enable (session_id=>123,serial_num=>123, waits=> TRUE, binds=> true );
|
||||
exec dbms_monitor.session_trace_disable (session_id=>123,serial_num=>123);
|
||||
|
||||
-- Trace user's own session
|
||||
exec dbms_monitor.session_trace_enable (NULL,NULL,TRUE,TRUE) ;
|
||||
exec dbms_monitor.session_trace_disable ;
|
||||
|
||||
alter system set events '1031 trace name errorstack level 3';
|
||||
|
||||
*/
|
||||
|
||||
BEGIN
|
||||
FOR i IN ( SELECT SID, serial#
|
||||
FROM v$session
|
||||
WHERE SID = &&1 )
|
||||
LOOP
|
||||
/* Set session DUMP file size */
|
||||
SYS.dbms_system.set_int_param_in_session ( i.SID
|
||||
, i.serial#
|
||||
, 'MAX_DUMP_FILE_SIZE'
|
||||
, 2097152 -- operating system blocks
|
||||
);
|
||||
/* Set session TIMED_STATISTICS to TRUE */
|
||||
SYS.dbms_system.set_bool_param_in_session ( i.SID
|
||||
, i.serial#
|
||||
, 'TIMED_STATISTICS'
|
||||
, TRUE
|
||||
);
|
||||
|
||||
-- alter session set events '10046 trace name context forever, level 12';
|
||||
/* Set session trace level to 12 */
|
||||
dbms_system.set_ev ( i.SID
|
||||
, i.serial#
|
||||
, 10046
|
||||
, 12
|
||||
, ''
|
||||
);
|
||||
|
||||
/* Set session SQL trace to TRUE */
|
||||
dbms_system.set_sql_trace_in_session ( i.SID
|
||||
, i.serial#
|
||||
, TRUE
|
||||
);
|
||||
|
||||
/* To disable trace*/
|
||||
-- dbms_system.SET_BOOL_PARAM_IN_SESSION(i.SID,i.serial#,'SQL_TRACE',FALSE);
|
||||
|
||||
END LOOP;
|
||||
END;
|
||||
/
|
||||
Reference in New Issue
Block a user