如何将数据库中被锁表解锁

如何将数据库中被锁表解锁,第1张

如何将数据库中被锁表解锁,第2张

我们在操作数据库的时候,有时候会因为操作不当导致数据库表被锁定,所以我们经常会不知所措,不知道如何解锁这些表。pl/sql developer工具的“工具”菜单中的“会话”可以查询已有的会话,但是我们很难找到哪个会话被锁定了,更难找到被锁定的会话。以下查询语句可以查询锁定的会话。如下:
select sn.username,m.sid,sn.serial #,m.type,
decode (m.lmode,
0,' none ',
1,' null ',
'row excl . ',
4,' share ',
5,' s/row excl . ',
6,' exclusive ',
lmode,ltrim (to_char (lmode,' 990= 0)-有锁请求,即被阻塞
或(sn . sid = m . sid-没有锁请求,但被锁定的对象被其他会话请求锁定
和m.request = 0
和lmode!= 4
and (id1,id2) in (
select s.id1,s . id2
from v $ lock s
where request!= 0且s.id1 = m.id1
且s . id2 = m . id2)
)
order by id1,id2,m.request

通过上面的查询知道sid和序列号,就可以kill
alter system kill session ' SID,serial # ';

位律师回复
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
白度搜_经验知识百科全书 » 如何将数据库中被锁表解锁

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情