[ORACLE]获取当前会话的跟踪文件路径

获取当前会话的跟踪文件路径

SELECT d.VALUE 
|| / 
|| LOWER (RTRIM (i.INSTANCE, CHR (0))) 
|| _ora_ 
|| p.spid 
|| .trc trace_file_name 
FROM 
     (SELECT p.spid FROM v$mystat m, v$session s, v$process p  WHERE m.statistic# = 1 AND s.SID = m.SID AND p.addr = s.paddr) p, ----获取当前会话的系统进程id
     (SELECT t.INSTANCE FROM v$thread t, v$parameter v  WHERE v.NAME = thread  AND (v.VALUE = 0 OR t.thread# = TO_NUMBER (v.VALUE))) i,  ----->获取实例名
     (SELECT VALUE  FROM v$parameter  WHERE NAME = user_dump_dest) d ; ---->获取跟踪文件的主路径

v$mystat,v$sesstat是用来分别统计会话级别和自实例起动以来数据库各种统计信息的。两个视图结构一致,只是统计数据不一致。可以说v$mystatv$sesstat的子集。v$mystat视图中只会有当前用户的会话信息,v$sesstat会有整个实例内所有会话信息

v$statname,v$sysstat视图结构的差别就是v$sysstatv$statname多一个value列。

查某条DML语句所产生的redo信息。可以这样写:
   select value from v$mystat t,v$statname t1 where t.STATISTIC# = t1.STATISTIC# and t1.NAME = ‘redo size‘

[ORACLE]获取当前会话的跟踪文件路径

上一篇:centos7安装eclipse


下一篇:指令(MySQL)