[20120723跟踪文件的定位.txt

[20120723跟踪文件的定位.txt

在做10046跟踪的时候,经常需要定位跟踪文件的位置。
alter session set events '10046 trace name context forever, level 8';

11g下,在v$process加入了tracefile字段。执行如下就可以知道。
select tracefile from v$process where addr = (select paddr from v$session where sid = userenv('sid'))
或者执行
select * from v$diag_info where name='Default Trace File';

10g下写出通用的脚本要复杂一点,如下:

链接:
http://allthingsoracle.com/dynamic-sampling-i-an-introduction-part-2/

SELECT value ||
       CASE
       WHEN instr(dbms_utility.port_string, 'WIN_NT') > 0 then '\'
       ELSE '/'
       END || (
        SELECT instance_name FROM v$instance) || '_ora_' || (
        SELECT spid ||
               CASE
               WHEN traceid is not null then '_' || traceid
               ELSE null
               END
          FROM v$process
         WHERE addr = (
                SELECT paddr FROM v$session
                 WHERE sid  = (
                        SELECT sid FROM v$mystat WHERE rownum = 1))) || '.trc' as tracefile
  FROM v$parameter
 WHERE name  = 'user_dump_dest' ;

通过函数dbms_utility.port_string知道OS的操作系统类型,剩下的就简单了。

时间: 2024-10-25 20:15:46

[20120723跟踪文件的定位.txt的相关文章

[20160704]从跟踪文件抽取sql语句.txt

[20160704]从跟踪文件抽取sql语句.txt --以前写过两篇,链接如下: http://blog.itpub.net/267265/viewspace-775398/ http://blog.itpub.net/267265/viewspace-748041/ 1个利用tkprof的recodr参数,可以记录跟踪整个sql语句序列,缺点就是丢失一些递归的sql语句.另外一个利用awk脚本抽取sql语句. 今天再写一个简单一点的脚本: 1.环境: SCOTT@book> @ &r/v

[20160830]清除日志与跟踪文件.txt

[20160830]清除日志与跟踪文件.txt --我们数据库的dataguard磁盘空间非常紧张,前几天因为一些异常业务操作,导致dataguard磁盘空间不足, --日志切换情况: Date                Day    Total   H0   h1   h2   h3   h4   h5   h6   h7   h8   h9  h10  h11  h12  h13  h14  h15  h16  h17  h18  h19  h20  h21  h22  h23    

[20161130]11g跟踪文件位置.txt

[20161130]11g跟踪文件位置.txt --11G使用adrci管理跟踪文件,支持XML,不再像10g那样的目录管理方式. --实际上在安装时仅仅设置参数diagnostic_dest.看看我的测试机器. 1.环境: SYS@book> @ &r/ver1 PORT_STRING         VERSION     BANNER ------------------- ----------- --------------------------------------------

[20140217]在toad使用跟踪文件.txt

[20140217]在toad使用跟踪文件.txt 我使用toad版本是12.0.0.61,今天使用生成跟踪文件,发现在界面上可以访问跟踪文件的内容做一个测试看看. SCOTT@test> @ver BANNER -------------------------------------------------------------------------------- Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64

[20131031]从跟踪文件中抽取sql语句.txt

[20131031]从跟踪文件中抽取sql语句.txt 以前写过利用tkprof顺序抽取执行的sql语句http://space.itpub.net/267265/viewspace-748041但是递归语句没有记录下来. 今天看了一篇blog,记录如下:--说明:我修改2处:dept那行里面的-1原文有错,应该是半角-1.--printf "%s %s %s>>>> %s\n", stmt_count, depth_level, cursor_no, $0--

AG阅读总结7——跟踪文件总结

一.Oracle跟踪文件     Oracle跟踪文件分为三种类型,一种是后台报警日志文件,记录数据库在启动.关闭和运行期间后台进程的活动情况,如表空间创建.回滚段创建.某些alter命令.日志切换.错误消息等.在数据库出现故障时,应首先查看该文件,但文件中的信息与任何错误状态没有必然的联系. 后台报警日志文件保存BACKGROUND_DUMP_DEST参数指定的目录中,文件格式为 SIDALRT.LOG. 另一种类型是DBWR.LGWR.SMON等后台进程创建的后台跟踪文件.后台跟踪文件根据后

[20161101]rman备份与数据文件变化4.txt

[20161101]rman备份与数据文件变化4.txt --想象一下,如果备份文件时间很长,而这个时候数据文件大小发生了变化,oracle的备份如何解决这个问题呢? --前面我已经做了增大数据文件,参考链接:http://blog.itpub.net/267265/viewspace-2127386/ --这次测试减少数据文件大小看看. --早上的测试太乱了,重复做1次看看. 1.环境: SCOTT@book> @ &r/ver1 PORT_STRING                  

[20161031]rman备份与数据文件OS块.txt

[20161031]rman备份与数据文件OS块.txt --每个数据文件都有一个OS块,位于数据文件的第1块(也是0块).通过bbed无法访问: BBED> set dba 7,0 BBED-00205: illegal or out of range DBA (File 7, Block 0) BBED> set dba 7,1         DBA             0x01c00001 (29360129 7,1) BBED> dump File: /mnt/ramdis

[20150527]跟踪单个sql语句.txt

[20150527]跟踪单个sql语句.txt --11G下可以使用如下脚本跟踪单个sql语句,&1 表示 sql_id.   $ cat sql_trace.sql alter system set events 'sql_trace[SQL:&1] level 12'; host sleep 300 alter system set events 'sql_trace[SQL:&1] off'; --缺点生成的文件在各个用户的trc文件中.