### 首先登陆mysql shell $ mysql -u root -h 127.0.0.1 -p $密码输入 ### 查看mysql中现在执行的 所有线程 mysql>show processlist; 线程id 登陆用户 主机 数据库名称 指令 时间 ### kill 掉 指定的第一列线程id mysql>kill thread_id; #### 可以编写shell脚本执行如下 #!/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的内容像这个样子 kill 66402982; kill 66402983; kill 66402986; kill 66402991; ..... 好了, 我们在mysql的shell中执行, 就可以把所有锁表的进程杀死了. mysql>source kill_thread_id.sql 当然了, 也可以一行搞定 for id in `mysqladmin processlist | grep -i locked | awk '{print $1}'` do mysqladmin kill ${id} done