使用for update卡住锁表的解决办法(转)
发布日期:2021-09-08 01:44:37 浏览次数:32 分类:技术文章

本文共 604 字,大约阅读时间需要 2 分钟。

转载

今天使用select * from bd_corp for update改了好几次之后,突然执行N长时间都不行,马上给用友打电话,我听到了“锁表”两个字。

马上查询。

们在操作的时候,有时候会由于操作不当引起库表被锁定,这么我们经常不知所措,不知怎么给这些表解锁,在pl/sql Developer工具的的菜单“tools”里面的“sessions”可以查询现在存在的会话,但是我们很难找到那个会话被锁定了,想找到所以被锁的会话就更难了,下面这叫查询语句可以查询出所以被锁的会话。

1,查看哪个表被锁

select b.owner,b.object_name,a.session_id,a.locked_mode 

  from v$locked_object a,dba_objects b
  where b.object_id = a.object_id;

2,查看是哪个session引起的

select b.username,b.sid,b.serial#,logon_time

  from v$locked_object a,v$session b
  where a.session_id = b.sid order by b.logon_time;

3,杀掉对应进程

  执行命令:alter system kill session'1025,41';

  其中1025为sid,41为serial#.

转载地址:https://blog.csdn.net/weixin_34310369/article/details/85530694 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:Collie——基于 HTML5 的高性能 JavaScript 动画库
下一篇:(译)Professional Asp.Net MVC4 Chapter 11

发表评论

最新留言

第一次来,支持一个
[***.219.124.196]2024年03月30日 22时55分33秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章