我现在有一个用jsp和servlet开发的web系统,通过连接池连接到一个oracle9数据库,
但在一个罕见的不明原因情况下,一个表出现不能完成任何写操作的情况,即从任何客户端执行任何写操作,包括insert和 update,结果就是无限等待。请问这是什么原因,如果是死锁,因为不能insert,应该是表锁定,但根据我们的设计,应该没有
表锁定发生。
但在一个罕见的不明原因情况下,一个表出现不能完成任何写操作的情况,即从任何客户端执行任何写操作,包括insert和 update,结果就是无限等待。请问这是什么原因,如果是死锁,因为不能insert,应该是表锁定,但根据我们的设计,应该没有
表锁定发生。
另外,oracle可以查询锁的情况:
以DBA身份查询表锁:
select object_id,session_id,locked_mode from v$locked_object;select t2.username,t2.sid,t2.serial#,t2.logon_time
from v$locked_object t1,v$session t2
where t1.session_id=t2.sid order by t2.logon_time;
杀掉死锁:
alter system kill session 'sid,serial#'