美文网首页
Orcale 解决程序死锁

Orcale 解决程序死锁

作者: kangyiii | 来源:发表于2018-09-14 09:45 被阅读0次

前两天发现公司数据库从连接到查询的变得非常慢,已经影响到了项目的开发,所以就试着去解决了一下,这里记录下过程:

  1. 连接上数据库后,执行下面的语句查看死锁进程,主要看sid和serial#,因为后面要根据他们去Kill进程:
select sess.sid, sess.serial#, lo.oracle_username, lo.os_user_name, ao.object_name, lo.locked_mode
from v$locked_object lo, dba_objects ao, v$session sess
where ao.object_id = lo.object_id and lo.session_id = sess.sid;
  1. 如果查询有结果说明存在死锁进程,用sid和serial#Kill进程:
alter system kill session '你的sid,你的serial';
  1. kill之后再去执行1中的语句查看有没有产生新的死锁,有的话继续Kill,另外要注意一下object_name,也可根据object_name去查看是哪个对象产生的死锁,从而判断死锁发生原因。

我们最后发现object_name 是同事写的物化视图,把物化视图删除,问题解决。

相关文章

  • Orcale 解决程序死锁

    前两天发现公司数据库从连接到查询的变得非常慢,已经影响到了项目的开发,所以就试着去解决了一下,这里记录下过程: 连...

  • jstack命令:教你如何排查多线程问题

    这是之前的一个死锁案例: 一个多线程死锁案例,如何避免及解决死锁问题? 如程序中发生这样的死锁问题该如何排查呢?我...

  • 如何快速排查死锁?如何避免死锁?

    前言 相信程序员都会碰上这样的问题,Java死锁如何排查?又如何解决呢?那么,何为死锁呢?死锁是指两个或两个以上的...

  • 防止死锁的加锁机制

    防止死锁的加锁机制 问题 你正在写一个多线程程序,其中线程需要一次获取多个锁,此时如何避免死锁问题。 解决方案 在...

  • mysql 死锁排查

    一、show ENGINE INNODB status查看死锁位置,分析。 二、首先解决死锁可以从死锁发生的条件入...

  • Java基础进阶 JDK1.5后的同步解决和线程面试题

    1、JDK1.5后的同步解决(掌握) 在多生产和多消费的程序中,为了防止死锁,我们使用notifyAll()方法,...

  • golang 死锁

    解决死锁,加goroutine or 重试

  • 多线程二

    一、死锁 最容易导致死锁的一个情况信号锁 + 互斥锁 ,没处理好,导致死锁,NSConditionLock 解决死...

  • 线程 6. 死锁

    没有办法解决,只能避免 java同步机制解决了线程安全问题,但是同时也引发了死锁现象。死锁现象如何解决呢: 没法解...

  • 解决死锁的4种基本方法(值得收藏)

    解决死锁的4种基本方法(文末有惊喜) 1、预防死锁:通过设置一些限制条件,去破坏产生死锁的必要条件 2、避免死锁:...

网友评论

      本文标题:Orcale 解决程序死锁

      本文链接:https://www.haomeiwen.com/subject/hxbngftx.html