您的位置:首页 > 数据库 > Oracle

Oracle 执行SQL一直卡死不动和“资源正忙,但指定以NOWAIT方式获取资源,或链接失效”的解决办法

2017-03-28 09:14 471 查看
Oracle 问题1:执行 更新、修改、删除 时,控制台一直在转处于假死状态。

Oracle 问题2:出现 “资源正忙,但指定以NOWAIT方式获取资源,或链接失效” 的问题。

原因:有其他的用户在连接数据库进行 更新、修改、删除 等操作,导致当前数据库表被锁定,为了保证数据的一致性,因此其他用户在此用户未断开连接时无法进行操作。

解决办法:

1,先查出所有被占用进程的表,SQL语句如下:

select object_name,machine,s.sid,s.serial#
from v$locked_object l,dba_objects o ,v$session s
where l.object_id = o.object_id and l.session_id=s.sid;


其中 object_name 列数据为被锁定的表名,找到该列数据后,即可查看到 sid 和 serial。

杀掉连接:

ALTER system KILL session 'sid,serial#';


其中 SID 和 serial 分别对应执行第一步查询的结果。

执行完成之后该表即可解锁。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐