`
longgangbai
  • 浏览: 7253029 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Oracle 性能调优学习笔记(二)--诊断和调优工具SQLTRACE和TKPROF

 
阅读更多

1.查看系统用户dump
   show parameter dump;
   background_dump_dest:存储alertlog和后台进程trace的.
   user_dump_dest:存储用户的trace文件.
   max_dump_file_size:跟踪文件的大小.

   alter system set max_dump_file_size=500;
   alter system set user_dump_dest='';

   2.初始化SQL TRACE
     A.timed_statistics参数:(一般用户和dba)
      timed_statistics=true  允许sql trace 和其他的一些动态性能视图收集与时间有关的参数、
     系统级别:
      alter system set timed_statistics=true;
     会话级别:
     alter session set timed_statistics=true;
     查看dump的文件的大小
     B.sql_trace参数(dba权限可以修改)
     sql_trace=true表示启动跟踪,false表示禁用跟踪.
       系统级别:
      alter system set sql_trace=true scope=spfile;
     会话级别:
      alter session set sql_trace=true;
     通过存储过程启动sql_trace
     execute rdbms_system.set_sql_trace_in_session(SID,SERIAL#,true);
     ps:9为SID,7为SERIAL# true为开启跟踪

     
    使用说明:
    1.用户dba用户登录
      sqlplus /nolog
      conn /as sysdba
    2.设置初始化跟踪参数
    alter session set timed_statistics=true;
    dba用户跟踪:
    alter session set sql_true=true;
    dba跟踪其他用户(利用sys跟踪tbs,sysdba登录):
    select sid,serial#,command,username
       from v$session
      where username='TBS';
      SID:121
      SERIAL#:4786
    exec  dbms_system.set_sql_trace_in_session(121,4786,true);
    
    查看TBS用户的跟踪文件:
    用户跟踪文件的命名格式为:<oracle-SID>-ora-<PSID>.trc
        备注:<oracle-SID>:oracle 的SID.
       <PSID>:跟踪用户sid.
       
   3.查找跟踪文件
     根据会话中用户的名称查找对应paddr,根据paddr查找对应的进程spid.
    select spid from v$process
      where addr = (
         select paddr from v$session
        where username='TBS'
       );
    
      如果oracle-SID为ticket,spid=35572,那么对应的跟踪文件为: ticket-ora-35572.trc.
      然后使用TKPROF查看执行信息:
     
    
   TKPROF的使用
     tkprof 的目的是将sql trace 生成的跟踪文件转换成用户可以理解的格式.
     tkprof可对.trc文件进行分析,并生成一个分析文件.并且在分析.trc文件,生
     成分析文件时按各种选项进行排序,其中比较有用的一个排序选项是fchela,
     即按照elapsed time fetching来对分析的结果排序(记住要设置初始化参数
     time_statistics=true),生成的.prf文件将把最消耗时间的sql放在最前面
     显示。另外一个有用的参数就是sys,这个参数设置为no可以阻止所有以sys
     用户执行的sql被显示出来,这样可以减少分析出来的文件的复杂度,便于查看。


    1. 格式
      tkprof inputfile outputfile [optional | parameters ]
    参数和选项:
     explain=user/password 执行explain命令将结果放在SQL trace的输出文件中
     table=schema.table 指定tkprof处理sql trace文件时临时表的模式名和表名
     insert=scriptfile 创建一个文件名为scriptfile的文件,包含了tkprof存放的输出sql语句
     sys=[yes/no] 确定系统是否列出由sys用户产生或重调的sql语句
     print=number 将仅生成排序后的第一条sql语句的输出结果
     record=recordfile 这个选项创建一个名为recorderfile的文件,包含了所有重调用的sql语句
     sort=sort_option 按照指定的方法对sql trace的输出文件进行降序排序
       sort_option 选项
       prscnt  按解析次数排序
       prscpu  按解析所花cpu时间排序
       prsela  按解析所经历的时间排序
       prsdsk  按解析时物理的读操作的次数排序
       prsqry  按解析时以一致模式读取数据块的次数排序
       prscu   按解析时以当前读取数据块的次数进行排序
       execnt  按执行次数排序
       execpu  按执行时花的cpu时间排序
       exeela  按执行所经历的时间排序
       exedsk  按执行时物理读操作的次数排序
       exeqry  按执行时以一致模式读取数据块的次数排序
       execu   按执行时以当前模式读取数据块的次数排序
       exerow  按执行时处理的记录的次数进行排序
       exemis  按执行时库缓冲区的错误排序
       fchcnt  按返回数据的次数进行排序
       fchcpu  按返回数据cpu所花时间排序
       fchela  按返回数据所经历的时间排序
       fchdsk  按返回数据时的物理读操作的次数排序
       fchqry  按返回数据时一致模式读取数据块的次数排序
       fchcu   按返回数据时当前模式读取数据块的次数排序
       fchrow  按返回数据时处理的数据数量排序
   通过TKPROF生成相关的文件:
   tkprof ticket-ora-35572.trc ticket_tbs.prf aggregate=yes sys=no sort=fchela

分享到:
评论

相关推荐

    Tidy 代替tkprof,Oracle Trace 跟踪文件格式化工具

    Oracle Ebs官方工具Tidy 代替tkprof,Oracle Trace 跟踪文件格式化工具,可观测语句绑定变量的值。

    SQL Trace and TKPROF

    SQL Trace and TKPROF

    大牛出手Oracle SQL优化实例讲解

    6.sql trace分析工具--TKPROF详细讲解 7.V$SQL视图详解加几个实例 8.autotrace验证压缩表性能 9.autotrace验证消除子查询后的性能 10.基于基本的优化CBO 11.如何统计数据库数据 12.Oracle如何统计操作系统数据 13./*...

    Oracle高性能SQL调整

    主要内容包括:理解SQL调整在Oracle总体微调中地地位,使用诸如内嵌视图和BIF扩展提高Oracle SQL性能,确定并报告程序库缓存中的SQL语句,调整SQL表访问、完整表扫描和平行查询,运行TKPROF获得SQL跟踪报告,使用...

    Tkprof工具介绍和分析

    Tkprof工具介绍和分析 kprof是一个用于分析Oracle跟踪文件并且产生一个更加清晰合理的输出结果的可执行工具。如果一个系统的执行效率比较低,一个比较好的方法是通过跟踪用户的会话并且使用Tkprof工具使用排序功能...

    使用 Tkprof 分析 ORACLE 跟踪文件

    使用 Tkprof 分析 ORACLE 跟踪文件,通过这个文档,告诉大家如何使用tkprof这个工具。

    使用TKPROF 工具分析跟踪文件

    TKPROF 工具是oracle 提供的免费工具,有人习惯称之为"Trace Kernel Profile",也有人称之为"Tool Kit Profiler"或"transient kernel profiler. "。不过,这都不重要,重要的是我们应该掌握究竟应该如何 使用该工具对...

    Oracle性能优化方法(SQL篇)

    1.如何分析SQL语句 2.选用适合的ORACLE优化器 3.用EXPLAIN PLAN 分析SQL语句 4.使用TKPROF 工具来查询SQL性能状态 5.表分区的应用

    Oracle跟踪文件分析工具TKPROF使用简介[文].pdf

    Oracle跟踪文件分析工具TKPROF使用简介[文].pdf

    《Oracle高性能SQL调整》

    使用语如内嵌视图和BIF扩展提高QraleSQL性能,确定并报告程序库缓存中的SQL语句,调整SQL表访问、完整表扫描和平行查询,运行TKPROF获得SQL跟踪报告,使用Oracle线索为OracleSQL语句更改执行计划,使用Oracle8i优化...

    oracle高性能sql调整(全)

    理解SQL调整在Oracle总体微调中地地位,使用诸如内嵌视图和BIF扩展提高Oracle SQL性能,确定并报告程式库缓存中的SQL语句,调整SQL表访问、完整表扫描和平行查询,运行TKPROF获得SQL跟踪报告,使用Oracle线索 ...

    tkprof格式详解

    详解tkprof转换后的文件格式,用于SQL语句的分析和性能调优

    oracle高性能sql调整

    理解SQL调整在Oracle总体微调中地地位,使用诸如内嵌视图和BIF扩展提高Oracle SQL性能,确定并报告程式库缓存中的SQL语句,调整SQL表访问、完整表扫描和平行查询,运行TKPROF获得SQL跟踪报告,使用Oracle线索 ...

    ORACLE9i_优化设计与系统调整

    §12.8 使用SQL_Trace和TKPROF 151 §12.8.1 设置跟踪初始化参数 152 §12.8.2 启用SQL_Trace实用工具 152 §12.8.3 用TKPROF格式化跟踪文件 153 §12.8.4 解释TKPROF输出文件 155 §12.8.5 解释计划(Explain Plan)...

    让Oracle跑得更快 Oracle 10g性能分析与优化思路.part2.rar

    10.2 tkprof工具 256 10.3 10046事件 268 第11章 10053事件 276 第12章 性能视图和性能参数 294 12.1 性能视图 294 12.1.1 v$sql 295 12.1.2 v$sql_shared_cursor 300 12.1.3 v$session 305 12.1.4 v$sessstat 309 ...

    Oracle PL/SQL PRofiler应用指南

    Profiler是ORACLE PL/SQL 的一个调试优化跟踪方案的应, 相对sqltrace+tkprof工具调试优化跟踪方案来说, Profiler有最直观更方便的优点,因为不需要生成和读取服务器端的跟踪文件,它是将跟踪数据全部存储的数据库...

    让Oracle跑得更快 Oracle 10g性能分析与优化思路.part1.rar

    10.2 tkprof工具 256 10.3 10046事件 268 第11章 10053事件 276 第12章 性能视图和性能参数 294 12.1 性能视图 294 12.1.1 v$sql 295 12.1.2 v$sql_shared_cursor 300 12.1.3 v$session 305 12.1.4 v$sessstat 309 ...

    sqlmonitor

    sqlmonitor 1. 找出sid和serial# select sid,serial#,osuser from v$session t where t.USERNAME='USERNAME' 2. 开始sqltrace ... execute dbms_system.set_... 例: tkprof sqltrace文件.trc a.out 8. 打开a.out

    tkprof介绍

    tkprof介绍,简要介绍了tkprof的原理和方法。

    oracle 10.2.0.1 精简客户端.msi.zip

    1、本软件可作为简单的Oracle10g客户端使用,包括:tnsping、exp、imp、sqlldr、sqlplus、tkprof(新增)等功能,如对客户端功能有更高的使用要求,请安装官方Oracle客户端。 2、本软件安装后,连接oracle服务器时...

Global site tag (gtag.js) - Google Analytics