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 分别对应执行第一步查询的结果。
执行完成之后该表即可解锁。
ALTER system KILL session '65,3503';