美文网首页
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 解决程序死锁

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