job每5秒执行一次。每隔几天job就卡住一次,执行了几个小时也没执行完。
查看相关会话,发现正在执行一个select语句,这个语句是利用dblink访问远程数据库的一个表。
这是,如果在命令行中手动执行该job所调用的存储过程,能够执行通过。说明没有锁。
但是这个job始终被卡在select语句上,除非kill会话。
到底是什么引起的,有没有什么解决办法(手动kill会话的主意就不用再提了)
查看相关会话,发现正在执行一个select语句,这个语句是利用dblink访问远程数据库的一个表。
这是,如果在命令行中手动执行该job所调用的存储过程,能够执行通过。说明没有锁。
但是这个job始终被卡在select语句上,除非kill会话。
到底是什么引起的,有没有什么解决办法(手动kill会话的主意就不用再提了)
解决方案 »
- java.sql.SQLException: ORA-00604: 递归 SQL 级别 1 出现错误 ORA-01003: 语句未进行语法分析
- fedora13下安装Oracle10g
- 关于触发器,为什么跟其他代码写在一个文件PL/SQL SQL WINDOW里就报错呢?分开就又对了
- 找工作散分了
- 求数据表中字段的比较,请高手帮帮忙(急,在线等。。。)
- 如何才能提高查询速度?
- RedHat9下安装Oracle9i又遇到新问题,请教各位!
- 数据量很大的两个表之间的连接问题!优化问题
- 在Oracle里面我的一张表里的一个字段要定义成那种类型的才可以保存一篇有1万个汉字的文章
- 这个语句效率太低,各位大神有更好的建议吗?取得一个日期区间内最大日期的值和最小日期的值,用于相减
- oracle 导库问题
- ORACLE 11G RAC 安装蓝屏报错,能远程最好~
执行存储过程时是否有资源被锁锁住,最好把存储过程trace一下或者看一下日志文件
找到其中的原因。
我说的很清楚了,没有锁。job被卡住的同时,手动执行job的存储过程,能很快的执行完
我是Java程序员不是专业的DBA,所以只是猜测下是否有这方面的原因
你的JOB主要是执行什么工作,查询远端数据库的数据,用返回的数据插入本地表?
是的。并且总是被卡在select语句上
还有,你的select 返回的数据量是否固定,你插入表是否有约束,触发器.
你的存储过程里有没有考虑先将返回的数据存储在临时表里,然后用临时表来执行插入操作