Oracle--PLSQL客户端记录被另一用户锁死
Oracle--PLSQL客户端记录被另一用户锁死
ifanjiaxin 发表于2年前
Oracle--PLSQL客户端记录被另一用户锁死
  • 发表于 2年前
  • 阅读 184
  • 收藏 4
  • 点赞 0
  • 评论 2

新睿云服务器60天免费使用,快来体验!>>>   

摘要: PLSQL记录被另一用户锁死

                        如何解决PLSQL记录被另一用户锁死

                一,问题描述

                            当使用PLSQL进行Oracle的操作时,很多人图简单,会使用FOR UPDATE语句,但是

                 一不小心,忘记提交,就会出现记录被锁死的情况。

                二,解决方案

                           1,找到执行修改操作的人(会话),提交或回滚事务

                           2,找出被锁定的进程号,KILL掉即可

                                2-1,找出锁定的进程号及序列号的SQL如下:

                                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; 

                                2-2,杀死这个锁定的进程

                                alter system kill session 'sid,serial#'

                          将2-1中查询出来的对应字段的值,替换2-2中标红的位置,注意中间有逗号哦!!

                

  • 打赏
  • 点赞
  • 收藏
  • 分享
共有 人打赏支持
粉丝 29
博文 60
码字总数 18401
评论 (2)
0x208_雪狼
建议使用行锁,用啥for update 啊
ifanjiaxin

引用来自“0x208_雪狼”的评论

建议使用行锁,用啥for update 啊
for update是测试人员经常的 我一般自己写Update语句 行锁 我还没用过..10
×
ifanjiaxin
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: