1、线上突然出现一个问题
发现是写入数据超时,考虑是有同事新增完后未提交事务引起的,解决方案有两个如下:
- 查询出来状态是Locked的用户,然后删掉
#!/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
- 查找执行线程用时比较久的用户,然后删掉
SELECT * from information_schema.`PROCESSLIST` WHERE Time > 1000 AND USER = 'wonguser' and db like '%XX' ORDER BY TIME desc;
优先第一个