zoukankan      html  css  js  c++  java
  • MySQL 死锁的恢复

    MySQL 死锁的恢复

    1. 死锁产生的原因
      • 怎么产生的死锁其实是一个复杂的问题, 但归根结底就是不同的事务锁住了不同的资源, 不能释放, 又在请求其他的资源, 其他的资源被另一个事务占用, 又在等待该事务释放资源, 互相等待, 互相又无法释放资源给其他事物, 造成死锁.
    2. 死锁的恢复
      • 重启服务器
        这个方法很直接, 但如果是线上环境就不好办了, 重启很麻烦.
      • 断开服务器与数据库的所有连接
      select replace(group_concat(concat('KILL ',id,';')), ',', '') from information_schema.processlist
              where user='card' and db = 'card' order by 1;
      
      -- 找到 card 数据库 card 用户的所有连接, 然后把这个 id 和 kill 连起来, 然后得到一个 SQL语句, 再次执行这个新生成SQL, 会把当前用户的所有连接杀掉, 死锁会恢复, 不用重启服务器.
  • 相关阅读:
    docker 部署 zabbix
    docker 搭建私有云仓库
    doeker部署zabbix
    LVS
    zabbix安装与配置
    keepalive
    Shell编程(5)
    Shell编程(4)
    Shell编程(3)
    几种Toast用法
  • 原文地址:https://www.cnblogs.com/zh1903/p/14031934.html
Copyright © 2011-2022 走看看