- 爱易网页
-
数据库教程
- Oracle数据库锁有关问题
日期:2014-05-16 浏览次数:20342 次
Oracle数据库锁问题
Oracle ORA-00054报错:资源正忙,但制定以NOWAIT 方式获取资源,或者超时失效。
出现该问题,一般都是被操作的对象加了锁,资源被另一个会话锁定,发生阻塞;
先查询被锁对象的缓存id,然后通过这个缓存id取得该锁的主键sid和系列号serial#,最后通过取得的这两个参数,关掉这个锁进程。
1.查询缓存id
SQL> select session_id from v$locked_object;
SESSION_ID
----------
25
2.获得 主键sid和系列号serial#
SQL> select sid,serial#,username,osuser from v$session where sid=14;
SID SERIAL# USERNAME
---------- ---------- ------------------------------
OSUSER
------------------------------
25 2368 root
oracle
3.关掉锁进程
SQL> alter system kill session '14,1237';
System altered.
4.重新删除POST表
SQL> drop table test;
Table dropped.
完成!
免责声明: 本文仅代表作者个人观点,与爱易网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。