这个工具和 DBMS_PROFILER 有点类似,但是比这个DBMS_PROFILER 这个工具粒度太细,没有层次,没有汇总,而 DBMS_PROFILER能提供类似机构树这样逐层汇总的信息。
使用步骤
- 先创建外部目录PLSHPROF_DIR (create or replace directory PLSHPROF_DIR as ‘/tmp’; )
- 将directory赋读写权限给指定数据库用户(GRANT WRITE,READ ON DIRECTORY PLSHPROF_DIRTO apps;)
- 将sys.dbms_hprof执行权限赋予指定数据库用户(grant execute on dbms_hprof to apps;)
- 执行 @?/rdbms/admin/dbmshptab.sql 这个脚本来初始化环境
- 开启一个session,执行dbms_hprof.start_profiling(location => ‘PLSHPROF_DIR’,filename => ‘pwdbb
w.trc’); - 在同一个session中,执行相关存储过程
- 结束:dbms_hprof.stop_profiling;
- 在ORACLE_BIN目录执行:plshprof ‐output hprof pwdbbw.trc
- 其中 hprof 为生成的输出html文件的名称,pwdbbw.trc 是源追踪文件
- 查看产生的html报告