dkfr.net
当前位置:首页 >> ORACLE 存储过程被锁,编译不了,怎么解锁? >>

ORACLE 存储过程被锁,编译不了,怎么解锁?

一些ORACLE中的进程被杀掉后,状态被置为"killed",但是锁定的资源很长时间不释放,有时实在没办法,只好重启数据库。现在提供一种方法解决这种问题,那就是在ORACLE中杀不掉的,在OS一级再杀。 1.下面的语句用来查询哪些对象被锁: select obje...

1.查看是哪一个存储过程被锁住 查V$DB_OBJECT_CACHE视图 select * from V$DB_OBJECT_CACHE where owner='过程的所属用户' AND LOCKS!='0' 2.查看是哪一个sid,通过sid可以知道是哪一个session 查v$access视图 select * from v$access where owne...

你是要找到被锁住的存储过程,还是要看存储过程是那部分执行慢,导致过程被锁住时间长。 如果是前者,那么oracle有个视图 v$locked_object和DBA_DML_LOCKS,这个能看出被锁的object都有哪些是哪个session锁的。 然后可以通过这个session_id找到...

你怎么查的锁?v$locked_object?dba_ddl_locks查了没,可能是ddl的锁,如果不能编译,一编译就死,也可能是ddl的锁导致的,以前碰到过。如果能找到锁,那就简单了。 不过还碰到过一种特别扯淡的情况,关掉自己的连接,然后换一台电脑从新来过,...

不是因为锁住了,是因为你编译的时候,正好有人在调用你的那个存储过程,

可用第三方工具检查错误。 如以下存储过程: 其中第六行故意少写了一个分号。 然后执行后,会提示完成,这时可以去左边的树中找到这个存储过程,显示是有个红叉的。 这时,可以右键,选择编辑。 然后打开页面的最下方会显示如下信息。 此时鼠标...

无效状态有两种可能,一种是你的存储过程编辑没有成功,创建了,但里面有语法错误。 还有一种是存储过程使用的表有结构上的改变,需要重新编译一下。 你重新编译一下,如果不成功,就是有语法问题,你需要修改存储过程。

无效状态有两种可能: 1、一种是你的存储过程编辑没有成功,创建了,但里面有语法错误。 2、还有一种是存储过程使用的表有结构上的改变,需要重新编译一下。 解决方法如下: 重新编译一下,如果不成功,就是有语法问题,你需要修改存储过程。 延...

使用select for update 或者直接lock table。 lock table有六选项,根据你的要求来做。

网站首页 | 网站地图
All rights reserved Powered by www.dkfr.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com