应用程序什么情况下会造成oracle死锁,如何

2024-12-27 01:42:44
推荐回答(1个)
回答1:

不同的事务同一时间操作同一张表的同一条记录的时候会造成死锁。

解锁语句
select object_name 对象名称,machine as 主机,
s.program 程序,s.sid,s.serial#,p.spid as OS进程号
from v$locked_object l,dba_objects o ,v$session s ,v$process p
where l.object_id=o.object_id
and l.session_id=s.sid
and s.paddr=p.addr;

ALTER SYSTEM KILL SESSION '1377,4392' --依次填入SID和SERIAL#解锁

1 使用事务时,尽量缩短事务的逻辑处理过程,及早提交或回滚事务; (细化处理逻辑,执行一段逻辑后便回滚或者提交,然后再执行其它逻辑,直到事物执行完毕提交)
2 设置死锁超时参数为合理范围,如:3分钟-10分种;超过时间,自动放弃本次操作,避免进程悬挂;