zoukankan      html  css  js  c++  java
  • PLSQL Developer 运用Profiler 分析存储过程性能

      最近应公司需要,需要编写ORACLE存储过程。本人新手,在完成存储过程的编写后,感觉需要对存储过程中各个语句的执行时间进行分析,以便

    对整个存储过程进行优化。

      由于用的是PLSQL Developer 客户端工具,而网上大多介绍的是通过手工方法应用Profiler,使用相对比较烦杂,大致是通过命令行,以SYS用户

    首先创建dbms_profiler包,而且还要创建一个用于存放跟踪信息的用户,及其prof表和序列的同义词,最后用profiler用户创建prof表和序列,并赋权。

    这里对这种方法就不做介绍了。(如有需要,将会另写一篇关于此方法的介绍)

    下面将详细介绍在PLSQL DEVELOPER 应用Profiler:

    1、右键存储过程,单击测试

    2、单击测试后,会弹出一个测试窗口,如下图,此时点击"创建概览图报告"

    3、点击"执行" 或者  F8 执行存储过程

    4、执行完后 点击"测试窗口" 上的 概览图 会出现如下:

    每列的详细意义如下:
    unit        --单元名称,即执行的存储过程,包括其调用的过程
    line        --代码行号
    total time    --此行执行时间(颜色长度表示本行代码的执行时间与最长代码执行时间的百分比图)
    occurrences    --此行执行次数
    text        --对应代码行,对于加密的代码,将不能显示
    Average time    —平均运行时间
    maximum time    --最大运行时间
    minimum time    --最小运行时间(以上三个时间默认不显示,可以通过配置对话框选择显示,参加4.4)

    列表中显示的源代码只显示一行,如果要定位则可以在对应的行中打开右键,选择[Go to unit line] ,这样就会直接跳到对应的源代码位置。

    Profiler面板的工具栏说明:
    a、显示配置对话框
    b、刷新
    c、删除当前运行号的数据
    d、Run 显示当前的系统的所有Profiler列表,缺省为当前的跟踪
    e、Unit 显示本次跟踪的单元列表信息(执行时间),缺省为所有单元的执行时间

    5.4、Profiler配置对话框

    这样 就可以对存储过程做一个很好的分析,从而对其进行优化。

  • 相关阅读:
    [HDOJ4788]Hard Disk Drive(水题)
    [HDOJ4782]Beautiful Soup(模拟)
    [HDOJ3652]B-Number(数位dp)
    [CF55D]Beautiful numbers(数位dp,状态压缩)
    [HDOJ3555]Bomb(数位DP)
    [HDOJ2089]不要62(数位DP)
    [HDOJ5881] Tea(找规律)
    [HDOJ5900]QSC and Master(区间dp)
    [HDOJ5878]I Count Two Three(暴力枚举,二分)
    [HDOJ5879]Cure(求极限,打表)
  • 原文地址:https://www.cnblogs.com/sicd/p/3875700.html
Copyright © 2011-2022 走看看