db2 查杀死锁进程
Posted 厚积薄发
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了db2 查杀死锁进程相关的知识,希望对你有一定的参考价值。
db2 查杀死锁进命令
db2 get snapshot for locks on (需要snapshot的访问权限)
db2 list applications
db2 "force application(8)"
在snapshot的第四段显示应用程序句柄为8的应用有锁存在,在其相应的锁定列表中显示锁定的表是US_CATALOG。
如果您确定是US_CATALOG表上发生了死锁,可以通过命令db2 "force application(8)"来杀掉该应用在数据库上的连接。
注意如果force命令导致该应用的事务回滚得话,force命令不能马上断开应用在数据库上的连接,而是要等到回滚完成后才能断开该应用的数据库连接。
可以用db2top -d db_name,进入按u,然后/ 输入表的名字,查看哪些application在这个表上加了什么锁。
如果想释放锁,只要force掉那些application就可以了。 db2 "force application(appl_id)"
不过建议force application之前,取快照看一下那个application在做什么,force之后,就会回滚,有些操作不可回滚,
这个对象就invalid了。
以上是关于db2 查杀死锁进程的主要内容,如果未能解决你的问题,请参考以下文章