2021-12-07
Oracle:有个存储过程执行很慢,能想到的就是把存储过程里面涉及到的sql分段分析,有其他好的方法吗?
Oracle:有个存储过程执行很慢,能想到的就是把存储过程里面涉及到的sql分段分析,有其他好的方法吗?
我来答
添加附件
收藏
分享
问题补充
4条回答
默认
最新
回答交流
提交
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
墨值悬赏
Oracle:有个存储过程执行很慢,能想到的就是把存储过程里面涉及到的sql分段分析,有其他好的方法吗?
第一步你得找出你的存储过程慢在哪里,可能你一个存储过程有1000行,其中就一条SQL执行慢,耗时80%,你得把这条sql找出来,Oracle有个dbms_profiler包,服务器端可能需要配置一下,然后在PL/SQL里点右键打开这个存储过程,选择菜单test,右边有个工具栏"Create profiler report",点了它在跑一次,你的耗时分布看的清清楚楚,每行代码执行多少次,占用多重时间,找出瓶颈了再对进一步分析
评论
有用 0
这是说的sql分段执行sql计划任务?任意链接工具都行,看sql的执行计划就行;
评论
有用 01.简单查询方式
通过ash/dash视图查询pl/sql执行期间,被捕获到的sql_id与sql_plan_line_id,捕获到最多的,基本上就是执行较慢。
2.跟踪定位方式
使用DBMS_PROFILER跟踪。
评论
有用 0
墨值悬赏