暂无图片
分享
leey
2020-04-20
oracle一直运行不结束,咨询各位大佬怎么分析原因。

oracle job一直运行不结束(该job每天执行一次,正常情况执行几小时完成后会结束的),隔段时间会出现这种问题。到底什么原因导致的,不想kill掉,想查一下原因,咨询各位大佬怎么分析原因。

收藏
分享
9条回答
默认
最新
leey
上传附件:job.docx
暂无图片 评论
暂无图片 有用 0
JiekeXu
暂无图片

先查看一下这个 Job 是干嘛的吧

暂无图片 评论
暂无图片 有用 0
leey

日结的job

暂无图片 评论
暂无图片 有用 0
田弼元

具体看一下这个Job,比如说,这个Job是去执行一个存储过程,那就看这个存储过程怎么写的,有哪些SQL,那一步执行的慢

暂无图片 评论
暂无图片 有用 0
一笑而起

3个小时前的了。
job结束了吗?
首先查一查,job是不是在运行中。dba_jobs_running
如果还在运行,可以查查他的session正在运行的sql;当前的锁是否有争用;该session的 gv$session_longops也可以参考。

如果结束了,那就抓个awr分析一下吧。

暂无图片 评论
暂无图片 有用 0
leey

job没结束上午手动把他kill掉了,kill掉前查了正在执行的语句是一个update语句,等待事件是enq: TX - row lock contention 估计是表锁了。把sql扔给开发去调整了

暂无图片 评论
暂无图片 有用 0
Kun

运行job出现enq: TX - row lock contention等待,有可能是逻辑执行顺序有问题哦

暂无图片 评论
暂无图片 有用 0
leey

好的,谢谢各位大佬。把问题交给开发了,让他们去调整

暂无图片 评论
暂无图片 有用 0
leey
问题已关闭: 问题已经得到解决
暂无图片 评论
暂无图片 有用 0
回答交流
提交
问题信息
请登录之后查看
附件列表
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
暂无图片墨值悬赏