zoukankan      html  css  js  c++  java
  • mysql innodb引擎 一次线上死锁分析排查步骤

    我们的线上erp系统一天使用人员反映部分数据死活保存不上而且页面操作很慢。开始以为操作数据量大的原因,

    后来查看了我们线上的glowroot系统,发现slowtrace中有超长时间的访问,点开查看详情发现有语句产生了思索。

    二话不说 登录生产环境数据库,查看引起状态

    >show engine innodb status G;

    发现死锁关键词

    随后分析之后的transaction

    共有2个事务。

    事务(1)产生了x排他所

    事务(2)产生了s共享锁

     我们都知道 共享锁和排它锁如果相遇是竞争的,是冲突的,所以就产生了,数据写入失败,事务回滚的情况,最后通过跟开发沟通,发现有一个service服务代码有问题,屏蔽到之后修复此次问题。

    每一个锁的问题都不一样,需要根据具体的应用急sql环境去解决。顺便补充一张图:

    兼容就授权,不兼容就等待,等待的过程就可能产生了死锁。

  • 相关阅读:
    hadoop使用FAQ
    kerberos在rehl6和7不兼容问题
    zookeeper使用场景
    临时记录
    SecureCRT远程工具
    jdk 环境安装
    等效
    lnmp安装及nagios
    svn的安装使用
    用户在乎的事
  • 原文地址:https://www.cnblogs.com/netsa/p/8780306.html
Copyright © 2011-2022 走看看