做频繁的数据库更新(插入、更新、删除)操作时,经常会涉及到数据库锁表的场景,
以Oracle数据库为例,锁表时看下我们如何解锁。
查询锁表SQL语句
SELECT o.OWNER,
o.OBJECT_NAME,
o.OBJECT_TYPE,
s.SID,
s.SERIAL#,
s.USERNAME,
s.STATUS,
s.MACHINE,
s.PROGRAM,
s.EVENT, --s.PORT, s.PROCESS,
'alter system kill session ' || '''' || s.sid || ',' || s.serial# ||
''';' AS sqlcmd
FROM v$locked_object l, v$session s, dba_objects o
WHERE l.OBJECT_ID = o.OBJECT_ID
AND l.SESSION_ID = s.SID
ORDER BY o.OWNER, o.OBJECT_NAME;
这段SQL查询出了目前数据库的锁表的对象,其中查询结果的最后一行,是对应这一行锁表对象的解锁语句。
联系作者
微信公众号
xiaomingxiaola
(BossLiu)
QQ群
58726094
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 384276224@qq.com