--跟踪当前会话,相当于10046事件。
procedure dbms_session.session_trace_enable(waits IN BOOLEAN DEFAULT TRUE,
binds IN BOOLEAN DEFAULT FALSE,
plan_stat IN VARCHAR2 DEFAULT NULL);
procedure dbms_session.session_trace_disable;--跟踪其它会话,相当于10046事件。
PROCEDURE dbms_monitor.session_trace_enable(
session_id IN BINARY_INTEGER DEFAULT NULL,
serial_num IN BINARY_INTEGER DEFAULT NULL,
waits IN BOOLEAN DEFAULT TRUE,
binds IN BOOLEAN DEFAULT FALSE,
plan_stat IN VARCHAR2 DEFAULT NULL);
PROCEDURE dbms_monitor.session_trace_disable(
session_id IN BINARY_INTEGER DEFAULT NULL,
serial_num IN BINARY_INTEGER DEFAULT NULL);session_id:v$session.sid
serial_num:v$session.serial#
waits:如果为true,将收集等待信息;如果为false,则不收集。
binds:如果为true,将收集绑定变量的信息;如果为false,则不收集。
plan_stat:oracle 11g专有参数,确定在何时收集执行计划每一步的记录数。有效的值包括NEVER、FIRST_EXECUTION或ALL_EXECUTION。--识别跟踪文件
alter session set tracefile_identifier=ING;--获取跟踪状态
SQL> SELECT s.sql_trace, s.sql_trace_waits, s.sql_trace_binds,
2 traceid, tracefile
3 FROM v$session s JOIN v$process p ON (p.addr = s.paddr)
4 WHERE audsid = USERENV ('SESSIONID');
SQL_TRACE SQL_TRACE_WAITS SQL_TRACE_BINDS TRACEID TRACEFILE
--------- --------------- --------------- ------------------ -------------------------------------------------------------------
DISABLED FALSE FALSE ING /u01/app/diag/rdbms/orcl/orcl/trace/orcl_ora_3397_ING.trc
Oracle 10046 事件跟踪详解
本文详细介绍了如何使用Oracle的dbms_session和dbms_monitor包来启用和禁用类似于10046事件的会话跟踪功能。通过设置不同的参数,如收集等待信息和绑定变量信息等,可以精确控制跟踪的内容。此外,还提供了如何识别和获取跟踪文件的方法。
925

被折叠的 条评论
为什么被折叠?



