zoukankan      html  css  js  c++  java
  • MYSQL锁表问题解决

    本文实例讲述了MYSQL锁表问题的解决方法。分享给大家供大家参考,具体如下:

    很多时候!一不小心就锁表!这里讲解决锁表终极方法!

    //1.查看当前数据库锁表的情况
    SELECT * FROM information_schema.INNODB_TRX;
    //2.杀掉查询结果中锁表的trx_mysql_thread_id
    kill trx_mysql_thread_id

    案例一

    1
    mysql>show processlist;

    参看sql语句

    一般少的话

    1
    mysql>kill thread_id;

    就可以解决了

    kill掉第一个锁表的进程, 依然没有改善. 既然不改善, 咱们就想办法将所有锁表的进程kill掉吧, 简单的脚本如下.

    1
    2
    3
    4
    5
    6
    #!/bin/bash
    mysql - u root - e " show processlist " | grep - i " Locked " >> locked_log . txt
    for line in ` cat locked_log.txt | awk '{print $1 }' `
    do
    echo " kill $line ; " >> kill_thread_id . sql
    done

    现在kill_thread_id.sql的内容像这个样子

    1
    2
    3
    4
    5
    kill 66402982 ;
    kill 66402983 ;
    kill 66402986 ;
    kill 66402991 ;
    .....

    好了, 我们在mysql的shell中执行, 就可以把所有锁表的进程杀死了.

    1
    mysql > source kill_thread_id . sql

    当然了, 也可以一行搞定

    1
    2
    3
    4
    for id in `mysqladmin processlist | grep -i locked | awk '{print $1}'`
    do
    mysqladmin kill ${id}
    done

    案例二

    如果大批量的操作能够通过一系列的select语句产生,那么理论上就能对这些结果批量处理。

    但是mysql并没用提供eval这样的对结果集进行分析操作的功能。所以只能现将select结果保存到临时文件中,然后再执行临时文件中的指令。

    具体过程如下:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    mysql> SELECT concat('KILL ',id,';') FROM information_schema.processlist WHERE user='root';
    +------------------------+
    | concat('KILL ',id,';')
    +------------------------+
    | KILL 3101;     
    | KILL 2946;     
    +------------------------+
    2 rows IN SET (0.00 sec)
    mysql> SELECT concat('KILL ',id,';') FROM information_schema.processlist WHERE user='root' INTO OUTFILE '/tmp/a.txt';
    Query OK, 2 rows affected (0.00 sec)
    mysql> source /tmp/a.txt;
    Query OK, 0 rows affected (0.00 sec)
  • 相关阅读:
    leetcode 190 Reverse Bits
    vs2010 单文档MFC 通过加载位图文件作为客户区背景
    leetcode 198 House Robber
    记忆化搜索(DP+DFS) URAL 1183 Brackets Sequence
    逆序数2 HDOJ 1394 Minimum Inversion Number
    矩阵连乘积 ZOJ 1276 Optimal Array Multiplication Sequence
    递推DP URAL 1586 Threeprime Numbers
    递推DP URAL 1167 Bicolored Horses
    递推DP URAL 1017 Staircases
    01背包 URAL 1073 Square Country
  • 原文地址:https://www.cnblogs.com/edda/p/12984075.html
Copyright © 2011-2022 走看看