当前位置: 首页 > 编程笔记 >

Oracle删除死锁进程的方法

竺国兴
2023-03-14
本文向大家介绍Oracle删除死锁进程的方法,包括了Oracle删除死锁进程的方法的使用技巧和注意事项,需要的朋友参考一下

本文实例讲述了Oracle删除死锁进程的方法。分享给大家供大家参考。具体如下:

步骤1:用以下SQL查看进程列表,判断出被锁定的表

SELECT dob.OBJECT_NAME Table_Name,lo.SESSION_ID||', '||vss.SERIAL# 删除号,

lo.locked_mode,lo.SESSION_ID, vss.SERIAL#,vss.action Action,vss.osuser OSUSER, vss.LOGON_TIME,

vss.process AP_PID, VPS.SPID DB_PID ,vss.*

From v$locked_object lo, dba_objects dob, v$session vss, V$PROCESS VPS

Where lo.OBJECT_ID = dob.OBJECT_ID

and lo.SESSION_ID = vss.SID

AND VSS.paddr = VPS.addr

order by 2,3,DOB.object_name

查找被锁表

步骤2 删除进程,如之前的“删除号”查找出的结果为“286, 2184”,则运行以下SQL

ALTER system kill session '286, 2184'

删除后不会马上生效一般,要过一会。

希望本文所述对大家的Oracle程序设计有所帮助。

 类似资料:
  • 本文向大家介绍PostgreSQL中关闭死锁进程的方法,包括了PostgreSQL中关闭死锁进程的方法的使用技巧和注意事项,需要的朋友参考一下 由于使用的PostgreSQL数据库,没有资料。只好进行谷歌。 最终在一个英文论坛中发现了解决方法。 如下: 1.检索出死锁进程的ID 检索出来的字段中,【wating 】字段,数据为t的那条,就是死锁的进程。找到对应的【procpid 】列的值。 2.将

  • 本文向大家介绍Oracle对于死锁的处理方法,包括了Oracle对于死锁的处理方法的使用技巧和注意事项,需要的朋友参考一下 Oracle数据库出现死锁的时候可以按照以下处理步骤加以解决: 第一步:尝试在sqlplus中通过sql命令进行删除,如果能够删除成功,则万事大吉!但通常情况下,出现死锁时,想通过命令行或者通过Oracle的管理工具删除有死锁的session,oracle只会将该sessio

  • 本文向大家介绍Oracle数据表中的死锁情况解决方法,包括了Oracle数据表中的死锁情况解决方法的使用技巧和注意事项,需要的朋友参考一下 在进行数据库管理的过程中,经常会出现数据表被用户的一些不合理操作而导致表被锁定的情况,以下主要介绍如何查找哪些表被哪个用户所锁定,以及如何解除锁定: 1.查找被锁定的表: 如果想知道具体是哪个进程阻塞了哪个进程,可用以下语句查看: 或 2.确定锁定表用户的si

  • N进程M资源死锁问题 京东2022C++开发岗一道笔试题: n进程,100个文件,每个进程并发处理4个文件,每个文件只能同时由一个进程访问,请问产生死锁最少的进程数n A.31 B.32 C.33 D.34 以前总觉得自己线程进程理解到位了,但是一遇到这道题立马投降了。 考试的时候一直在满脑子100/4=25,然后以100+25=125,且31*4=124,32*4=128为由,选择了32便略过了

  • 主要内容:1 什么是Java线程死锁,2 Java线程死锁的例子1 什么是Java线程死锁 Java中的死锁是多线程的一部分。当线程正在等待由另一个线程获取的对象锁而第二个线程正在等待由第一个线程获取的对象锁时,可能会发生死锁。由于两个线程都在互相等待释放锁,因此这种情况称为死锁。 2 Java线程死锁的例子 输出结果为:

  • 主要内容:Oracle使用SET UNUSED COLUMN子句删除列,Oracle SET UNUSED COLUMN示例,Oracle使用DROP COLUMN子句删除列,Oracle DROP COLUMN子句的例子在本教程中,将学习如何使用Oracle 语句从表中删除一个或多个列。 Oracle使用SET UNUSED COLUMN子句删除列 从大表中删除列的过程可能耗费时间和资源。 因此,通常使用语句来逻辑删除列,如下所示: 当执行了该语句,该列就不再可见。在非高峰时段,可以使用以下语