定时处理MySQL超时Locked进程的Shell脚本
2023-06-13 09:16:10 时间
最近一段时间,我刚刚进入一家新公司,并接手了这里的一个站点,由于这个站点的架构设计不太合理,导致MySQL的压力始终很大,经常出现超时的Locked进程,于是编写了一段Linux的Shell脚本来定时kill掉这些进程。
脚本如下:
#!/bin/bash
mysql_pwd="xxxxxx" #mysql的root密码
mysql_exec="/usr/local/mysql/bin/mysql"
tmp_dir="/tmp"
file_sh="$tmp_dir/mysql_kill_locked.sh"
file_tmp="$tmp_dir/mysql_kill_locked.tmp"
file_log="$tmp_dir/mysql_kill_locked.log" #日志
$mysql_exec -uroot -p$mysql_pwd -e "show processlist" | grep -i "Locked" > $file_tmp
cat $file_tmp >> $file_log
for line in `cat $file_tmp | awk '{print $1}'`
do
echo "$mysql_exec -uroot -p$mysql_pwd -e \"kill $line\"" >> $file_sh
done
chmod +x $file_sh
sh $file_sh #执行临时脚本
> $file_sh #清空临时脚本
最后,将这段脚本加入到crontab,定时执行即可。
阳光部落原创,更多内容请访问 http://www.sunbloger.com/
相关文章
- 【MySQL高级】MySql中常用工具及Mysql 日志
- Linux查看MySQL进程:一步一步实现(linux查看mysql进程)
- MySQL意外终止的排查与处理(mysql进程意外终止)
- MySQL查询进程:深入解析(mysql查询进程)
- MySQL高性能方案:极致性能实现(mysql高性能)
- MySQL 修补升级:让数据库安全更新(mysql打补丁)
- Mysql:一步一步指导MySQL安装版:一步一步指引安装(mysql安装版安装)
- MySQL中创建序列的实战操作(mysql创建序列)
- 脚本MySQL重构之旅:用Shell脚本简洁编写(mysql写shell)
- MySQL杀死顽固的进程(mysql杀进程)
- 删除MySQL数据库中的进程(删除mysql进程)
- MySQL 交叉连接技术指南(mysql交叉连接)
- 存储MySQL数据库:键值存储的优势(mysql数据库键值)
- 优化MySQL进程内存优化:提升数据库性能(mysql进程内存)
- 掌握MySQL基础知识,轻松搞定数据库管理(mysql基础知识)
- 诛仙之路:MySQL数据库运维秘籍(诛仙 mysql 数据库)
- MySQL数据类型长度:探索与调整(mysql数据类型长度)
- MySQL定时统计助力数据分析进程(mysql定时统计)
- 如何在MySQL中使用Shell操作数据(mysql中shell)
- 查看MySQL正在运行的进程(6.查看mysql的进程)
- 用CMD快速启动MySQL数据库(cmd启动运行mysql)
- CMD中操作MySQL构建数据库的过程(cmd中mysql的进程)
- MySQL去重如何在数据库中去掉相同的数据(mysql中去掉相同部分)
- MySQL安全进程保障数据库安全的必要之举(mysql_safe进程)