在Oracle中,如何获取trace文件的路径?
跟踪文件(Trace File)一般位于“user_dump_dest”参数所指定的目录中,具体路径可以通过以下几种方式查询获得。
1、通过user_dump_dest查询
运行如下SQL语句来创建视图:
1CREATE OR REPLACE VIEW VW_SQL_TRACE_NAME_LHR AS
2SELECT D.VALUE || '/' || LOWER(RTRIM(I.INSTANCE, CHR(0))) || '_ora_' ||
3 P.SPID || '.trc' TRACE_FILE_NAME
4 FROM (SELECT P.SPID
5 FROM V$MYSTAT M, V$SESSION S, V$PROCESS P
6 WHERE M.STATISTIC# = '1'
7 AND S.SID = M.SID
8 AND P.ADDR = S.PADDR) P,
9 (SELECT T.INSTANCE
10 FROM V$THREAD T, V$PARAMETER V
11 WHERE V.NAME = 'thread'
12 AND (V.VALUE = '0' OR TO_CHAR(T.THREAD#) = V.VALUE)) I,
13 (SELECT VALUE FROM V$PARAMETER WHERE NAME = 'user_dump_dest') D;复制
创建公共同义词的命令如下所示:
1CREATE OR REPLACE PUBLIC SYNONYM SYN_TRACENAME_LHR FOR VW_SQL_TRACE_NAME_LHR;
复制
查询同义词或视图都可以得到当前会话的trace文件名。
1SYS@lhrdb> SELECT * FROM VW_SQL_TRACE_NAME_LHR;
2TRACE_FILE_NAME
3--------------------------------------------------------------------------------
4/oracle/app/oracle/diag/rdbms/lhrdb/lhrdb/trace/lhrdb_ora_19660944.trc复制
2、Oracle 11g可以通过查询V$DIAG_INFO获取
1SYS@lhrdb> SELECT VALUE FROM V$DIAG_INFO WHERE NAME LIKE '%Default%';
2VALUE
3--------------------------------------------------------------------------------
4/oracle/app/oracle/diag/rdbms/lhrdb/lhrdb/trace/lhrdb_ora_19660944.trc复制
3、oradebug tracefile_name获取
1SYS@lhrdb> oradebug setmypid
2Statement processed.
3SYS@lhrdb> oradebug tracefile_name
4/oracle/app/oracle/diag/rdbms/lhrdb/lhrdb/trace/lhrdb_ora_19660944.trc复制
4、通过参数直接查询
1SYS@lhrdb> ALTER SYSTEM DUMP DATAFILE 1 BLOCK 380313;
2System altered.
3SYS@lhrdb> SHOW PARAMETER USER_DUMP_DEST
4NAME TYPE VALUE
5------------------------------------ ----------- ------------------------------------------------------
6user_dump_dest string /oracle/app/oracle/diag/rdbms/lhrdb/lhrdb/trace
7SYS@lhrdb> ! ls -lrt /oracle/app/oracle/diag/rdbms/lhrdb/lhrdb/trace/*.trc | tail -n 5
8-rw-r----- 1 oracle asmadmin 34143 Sep 27 13:00 /oracle/app/oracle/diag/rdbms/lhrdb/lhrdb/trace/lhrdb_m001_15859814.trc
9-rw-r----- 1 oracle asmadmin 49356 Sep 27 14:00 /oracle/app/oracle/diag/rdbms/lhrdb/lhrdb/trace/lhrdb_m001_15728766.trc
10-rw-r----- 1 oracle asmadmin 19089 Sep 27 15:00 /oracle/app/oracle/diag/rdbms/lhrdb/lhrdb/trace/lhrdb_m001_28377292.trc
11-rw-r----- 1 oracle asmadmin 32115 Sep 27 15:04 /oracle/app/oracle/diag/rdbms/lhrdb/lhrdb/trace/lhrdb_mmon_21233818.trc
12-rw-r----- 1 oracle asmadmin 21278 Sep 27 15:05 /oracle/app/oracle/diag/rdbms/lhrdb/lhrdb/trace/lhrdb_ora_19660944.trc
13复制
& 说明:
有关获取trace文件的更多内容可以参考我的BLOG:http://blog.itpub.net/26736162/viewspace-2125659
本文选自《Oracle程序员面试笔试宝典》,作者:小麦苗

---------------优质麦课------------
详细内容可以添加麦老师微信或QQ私聊。
● 本文作者:小麦苗,只专注于数据库的技术,更注重技术的运用
● 作者博客地址:http://blog.itpub.net/26736162/abstract/1/
● 本系列题目来源于作者的学习笔记,部分整理自网络,若有侵权或不当之处还请谅解
● 版权所有,欢迎分享本文,转载请保留出处
● QQ:646634621 QQ群:618766405
● 提供OCP、OCM和高可用部分最实用的技能培训
● 题目解答若有不当之处,还望各位朋友批评指正,共同进步
长按下图识别二维码或微信扫描下图二维码来关注小麦苗的微信公众号:xiaomaimiaolhr,学习最实用的数据库技术。

文章转载自DB宝,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。
评论
相关阅读
Oracle DataGuard高可用性解决方案详解
孙莹
564次阅读
2025-03-26 23:27:33
Oracle RAC 一键安装翻车?手把手教你如何排错!
Lucifer三思而后行
524次阅读
2025-04-15 17:24:06
【纯干货】Oracle 19C RU 19.27 发布,如何快速升级和安装?
Lucifer三思而后行
425次阅读
2025-04-18 14:18:38
墨天轮个人数说知识点合集
JiekeXu
424次阅读
2025-04-01 15:56:03
XTTS跨版本迁移升级方案(11g to 19c RAC for Linux)
zwtian
423次阅读
2025-04-08 09:12:48
【ORACLE】记录一些ORACLE的merge into语句的BUG
DarkAthena
418次阅读
2025-04-22 00:20:37
Oracle SQL 执行计划分析与优化指南
Digital Observer
418次阅读
2025-04-01 11:08:44
【ORACLE】你以为的真的是你以为的么?--ORA-38104: Columns referenced in the ON Clause cannot be updated
DarkAthena
400次阅读
2025-04-22 00:13:51
Oracle数据库一键巡检并生成HTML结果,免费脚本速来下载!
陈举超
383次阅读
2025-04-20 10:07:02
Oracle 19c RAC更换IP实战,运维必看!
szrsu
361次阅读
2025-04-08 23:57:08