扩展跟踪文件分析工具 (TVD$XTAT)是个命令行工具.和TKPROF一样,主要目的是把原始跟踪文件作为输入内容生成一个格式化的文件作为输出内容.输出文件可以是HTML或是文本文件.界面非常友好,推荐使用

下面是安装过程:

1.下载介质
https://antognini.ch/2009/04/tvdxtat-40-beta-9/

2.root用户修改 tvd$xtat的所属用户和所属组
[root@Oracle11g ~]# chown -R oracle:oinstall tvdxtat_40beta11_20170301.zip

3.oracle建立专门的目录,专对 tvd$xtat
[oracle@Oracle11g ~]$ mkdir tvdxtat
[oracle@Oracle11g ~]$ mv tvdxtat_40beta11_20170301.zip  tvdxtat

4.解压该文件
[oracle@Oracle11g ~]$ cd tvdxtat
[oracle@Oracle11g tvdxtat]$ unzip tvdxtat_40beta11_20170301.zip
Archive:  tvdxtat_40beta11_20170301.zip
  inflating: changelog.txt           
  inflating: config/logging.properties  
  inflating: config/tvdxtat.properties  
  inflating: doc/commons-cli-license.txt  
  inflating: doc/tvdxtat-license.html  
 extracting: images/deed.gif         
 extracting: images/deed2.gif        
  inflating: images/deeds.css        
  inflating: images/logo_deed.gif    
 extracting: images/somerights20.gif  
 extracting: images/trivadis.gif     
  inflating: lib/commons-cli-1.0.jar  
  inflating: lib/tvdxtat.jar         
  inflating: readme.html             
  inflating: templates/active.xsl    
  inflating: templates/html.xsl      
  inflating: templates/text.xsl      
  inflating: templates/tvdxtat.xsd   
  inflating: tvdxtat.cmd             
  inflating: tvdxtat.sh              
 
5.修改文件tvdxtat.sh
[oracle@Oracle11g tvdxtat]$ echo $ORACLE_HOME   --确认oracle_home
/u01/app/oracle/product/11.2.0/db_1

[oracle@Oracle11g tvdxtat]$ ls -l /u01/app/oracle/product/11.2.0/db_1/jdk/jre  --确认java_home
总计 124
drwxr-xr-x  2 oracle oinstall  4096 2014-09-16 bin
-rwxr-xr-x  1 oracle oinstall   969 2008-10-31 CHANGES
-rwxr-xr-x  1 oracle oinstall  2487 2008-10-31 COPYRIGHT
drwxr-xr-x 14 oracle oinstall  4096 2014-09-16 lib
-rwxr-xr-x  1 oracle oinstall 13237 2008-10-31 LICENSE
-rwxr-xr-x  1 oracle oinstall 13936 2008-10-31 README
-rwxr-xr-x  1 oracle oinstall 67235 2008-10-31 THIRDPARTYLICENSEREADME.txt
-rwxr-xr-x  1 oracle oinstall   969 2008-10-31 Welcome.html

[oracle@Oracle11g tvdxtat]$ vi  tvdxtat.sh   --修改文件
#!/bin/sh

#JAVA_HOME=/u00/app/oracle/product/11.2.0.4/jdk/jre/  --保留原内容
JAVA_HOME=/u01/app/oracle/product/11.2.0/db_1/jdk/jre  --指定为实际路径
TVDXTAT_HOME=/home/oracle/tvdxtat   --指定为实际路径

--以下默认即可
$JAVA_HOME/bin/java -Xmx1024m -Dtvdxtat.home=$TVDXTAT_HOME -Djava.util.logging.config.file=$TVDXTAT_HOME/config/logging.properties -jar $TVDXTAT_HOME/lib/tvdxtat.jar $*
~
~
~6.使用 tvd$xtat.sh
[oracle@Oracle11g tvdxtat]$ ./tvdxtat.sh -i /u01/app/oracle/diag/rdbms/prod/prod/trace/prod_ora_8372_10046.trc -o /home/oracle/prod_ora_8372_10046.html -s no -w yes
00:00:00 WARNING automatically switch to release 11 (configured=12 detected=11)
00:00:00 WARNING line 1726 not processed
[oracle@Oracle11g tvdxtat]$ vi /home/oracle/p
prod_ora_3360.html        prod_ora_3360.xml         prod_ora_8372_10046.html  purchaseOrder.xml         
[oracle@Oracle11g tvdxtat]$ vi /home/oracle/prod_ora_8372_10046.html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"><html lang="en">
<head>
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>TVD$XTAT Output</title>
<style type="text/css">
                                body { background-color: rgb(244,244,244); }
                                h1 { color: rgb(55,55,55); font-family: helvetica; font-size: 15pt; font-weight: bold; }
                                h2 { color: rgb(55,55,55); font-family: helvetica; font-size: 13pt; font-weight: bold; }
                                h3 { color: rgb(55,55,55); font-family: helvetica; font-size: 11pt; font-weight: bold; }
                                p { color: rgb(55,55,55); font-family: helvetica; font-size: 10pt; font-weight: normal; }
                                a { color: rgb(55,55,55); font-family: helvetica; font-size: 10pt; font-weight: normal; }
                                a.th { color: rgb(244,244,244); background-color: rgb(55,55,55); font-family: helvetica; font-size: 10pt; font-weight: normal; }
                                p.error { color: rgb(255,0,0); font-family: helvetica; font-size: 10pt; font-weight: normal; }
                                th.color { color: rgb(244,244,244); background-color: rgb(55,55,55); font-family: helvetica; font-size: 10pt; font-weight: normal; vertical-align: top; }
                                th.no_color { color: rgb(55,55,55); font-family: helvetica; font-size: 10pt; font-weight: normal; vertical-align: top; }
                                td.color { color: rgb(55,55,55); background-color: rgb(220,208,192); font-family: helvetica; font-size: 10pt; font-weight: normal;  vertical-align: top; }
                                td.color_pre { color: rgb(55,55,55); background-color: rgb(220,208,192); font-family: helvetica; font-size: 10pt; font-weight: normal; white-space: pre; vertical-align: top; }
                                td.no_color { color: rgb(55,55,55); font-family: helvetica; font-size: 10pt; font-weight: normal; vertical-align: top; }
                                td.no_color_pre { color: rgb(55,55,55); font-family: helvetica; font-size: 10pt; font-weight: normal; white-space: pre; vertical-align: top; }
                        table { border: 0px solid rgb(55,55,55); border-collapse: separate; border-spacing: 2px 2px; }
                        </style>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js" type="text/javascript"></script><script type="text/javascript">
                                $(document).ready(function() {
                                        $(".toggle").click(function() {
                                                var text = $(this).text();
                                                if (text.indexOf("hide") != -1) {
                                                        $(this).text(text.replace("hide", "show"));
                                                }
                                                else {
                                                        $(this).text(text.replace("show", "hide"));
                                                }
                                                $(this).parent().next().toggle("slow");
                                                return false;
                                        });
                                        
--7.GUI窗口查看该文件 prod_ora_8372_10046.html ,效果非常棒

TVD$XTAT在linux下安装使用详解的更多相关文章

  1. linux下安装apache详解

    下载httpd-2.2.6.tar.bz2  把httpd-2.2.6.tar.bz2放到/soft 下[root@localhost ~]#cd /soft[root@localhost soft] ...

  2. linux下安装gcc详解

    1.了解一下gcc 目前,GCC可以用来编译C/C++.FORTRAN.JAVA.OBJC.ADA等语言的程序,可根据需要选择安装支持的语言.我自己linux上是4.1.2版本,是不支持openMP的 ...

  3. linux下IPTABLES配置详解 (防火墙命令)

    linux下IPTABLES配置详解 -A RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 24000 -j ACCEPT ...

  4. Linux下ps命令详解 Linux下ps命令的详细使用方法

    http://www.jb51.net/LINUXjishu/56578.html Linux下的ps命令比较常用 Linux下ps命令详解Linux上进程有5种状态:1. 运行(正在运行或在运行队列 ...

  5. Linux下rar命令详解

    Linux下rar命令详解 用法: rar <命令> -<选项1> ….-<选项N> < 操作文档> <文件…> <@文件列表…> ...

  6. linux下tar命令详解

     linux下tar命令详解    tar是Linux环境下最常用的备份工具之一.tar(tap archive)原意为操作磁带文件,但基于Linux的文件操作机制,同样也可适用于普通的磁盘文件.ta ...

  7. Linux下chkconfig命令详解(转)

    Linux下chkconfig命令详解 chkconfig命令主要用来更新(启动或停止)和查询系统服务的运行级信息.谨记chkconfig不是立即自动禁止或激活一个服务,它只是简单的改变了符号连接. ...

  8. Linux知识积累(4) Linux下chkconfig命令详解

    Linux下chkconfig命令详解 chkconfig命令主要用来更新(启动或停止)和查询系统服务的运行级信息.谨记chkconfig不是立即自动禁止或激活一个服务,它只是简单的改变了符号连接. ...

  9. Linux下top命令详解

    Linux下top命令详解 top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器.top是一个动态显示过程,即可以通过用户按键来不断刷 ...

随机推荐

  1. 基于linux-2.6.35的class_create(),device_create解析

    基于linux-2.6.35的class_create(),device_create解析 作者:苗老师,华清远见嵌入式学院讲师. 从linux内核2.6的某个版本之后,devfs不复存在,udev成 ...

  2. Mongodb3.X版本的 的用户认证

    一直使用公司的mongodb环境,本地的mongodb没有开启认证,为了环境更一致,决定加上本地mongodb的认证,不过在这个过程中发生了点波折. 我使用的是window版本的3.2,公司使用的是2 ...

  3. html锚点的作用和js选项卡锚点跳转的使用

    location是javascript里边管理地址栏的内置对象,比如location.href就管理页面的url,用location.href=url就可以直接将页面重定向url.而location. ...

  4. android studio 使用CMAKE

    前言 之前,每次需要边写C++代码的时候,我的内心都是拒绝的.  1. 它没有代码提示!!!这意味着我们必须自己手动敲出所有的代码,对于一个新手来说,要一个字母都不错且大小写也要正确,甚至要记得住所有 ...

  5. python 的 import 使用规则

    对于含有 __init__.py 的目录(如adir),其实它就是一个package,它的子目录如果也包含 __init__.py,则只要将 adir 加入 sys.path,则它的字目录就不用加了, ...

  6. Yarn之ResourceManager详细分析

    一.概述     本文将介绍ResourceManager在Yarn中的功能作用,从更细的粒度分析RM内部组成的各个组件功能和他们相互的交互方式. 二.ResourceManager的交互协议与基本职 ...

  7. 统计编程的框架与R语言统计分析基础——摘(1)

    清屏命令ctrl+L 一.基础 1.产生数据结构 a.直接输入 b.冒号,1:10 c.seq函数 d.rep函数 > 1:10 [1] 1 2 3 4 5 6 7 8 9 10 > 10 ...

  8. JavaScript在页面中的引用方法

    现在前端开发越来越流行,框架也越来越多,像ExtJs.JQuery.Bootstrap等.虽然入行这么多年,但是感觉自己在前端方面还是存在基础不牢的地方,特别是CSS和JS.因此最近打算重新阅读这方面 ...

  9. mysql8新特性(一)

    https://www.oschina.net/news/95325/mysql-8-0-ga-released http://blog.itpub.net/28218939/viewspace-21 ...

  10. 搭建Mybatis 出现 Error querying database. Cause: java.lang.IllegalArgumentException: Mapped Statements collection does not contain value for mapper.BatchCustomer.findBatchCustomerOneToOne

    Error querying database. Cause: java.lang.IllegalArgumentException: Mapped Statements collection doe ...