性能优化的关键是找到正确的方向,例如对一段pl/sql 代码,我们觉得它执行起来很慢,但是到底慢在那里,需要一个可测量的工具去分析,我们有时候会喜欢留下调试代码在里面,比如使用dbms_utility.get_time去得到语句执行前后所耗费的时间,如果代码很大的话,这将会很繁琐.
PL/SQL developer正好提供了这种功能,这里介绍下
PL/SQL developer概览图可以做到对于每个已运行的代码行,合计时间、最长时间、最短时间、平均时间和运行次数都将被有统计.可以在测试窗口轻松访问概览图。在运行测试脚本前,只需按下测试窗口工具栏中的创建概览图报告按钮即可。如果你随后运行脚本,可以转到概览图选项卡上查看报告。
这里举例说明.
我要测量我的proc_test存储过程.
测试窗口如下
2.点击概览图按钮
如果是第一次执行的话,会提示创建概览图分析使用的基表
事实上是在数据库里面创建两张基表分别为 PLSQL_PROFILER_DATA,PLSQL_PROFILER_RUNNUMBER,创建即可,点是确认.
执行我们的程序,完毕后看结果.
这里看到update target_tab 花费的时间最多,select count(*) 次之.
到此,可以定位到程序中最耗时的操作花费到那里,我们依此下钻,在那里做调优会获得最大的回报。
时间: 2024-10-12 21:44:42