kill mysql process_Mysql 批量 kill processlist
Mysql 批量 kill processlist
Mysql 有些查询语句不合理, 或者其它一些特殊的原因会导致一个查询进程 Locked, 而如果多个相似的查询可能会因为表设计的不合理而跟着排在这个进程后面接着 Locked.
在这样的情况下, 我们就会需要, kill 这个进程, 而打通整个数据库的任督二脉:
kill [进程ID]
但是如果我们是在一个进程 Locked 很久之后才发现, 有大量的进程已经被 Locked 了, 那要如何批量 kill 这些进程呢, 其实也不复杂:
首先我们需要获得一个完整的锁定的进程列表, 本例中就是处理时间超过10秒钟的, 状态为locked 的操作, 我们就人为他是异常锁定的进程了, 因此我们实用以下语句查询出这些进程:
SELECT id FROM information_schema.processlist WHERE State = 'Locked' AND Time > 10;
接着我们拼接出 Kill 这些进程的语句
SELECT concat('KILL ', id, ';') FROM information_schema.processlist WHERE State = 'Locked' AND Time > 10;
然后我们将这些SQL导出到为外部文件
SELECT concat('KILL ', id, ';') FROM information_schema.processlist WHERE State = 'Locked' AND Time > 10 INTO OUTFILE '/tmp/killthem.sql';
最后我们再导入执行这个SQL文件
SOURCE /tmp/killthem.sql
注, SOURCE 导入文件, 整个文件路径是没有单引号引用的.
至此批量 kill processlist 的操作就完成了.
kill mysql process_Mysql 批量 kill processlist相关推荐
- mysql kill 脚本_批量 kill mysql 中运行时间长的sql
以下内容来自mysql手册: 13.5.5.3. KILL语法 KILL [CONNECTION | QUERY] thread_id 每个与mysqld的连接都在一个独立的线程里运行,您可以使用SH ...
- kill掉多个进程linux中的sudo,linux下批量kill进程的方法
--kill某个用户下的所有进程(用户为test) --pkill # pkill -u test --killall # killall -u test --ps # ps -ef | grep t ...
- 批量 kill mysql 中运行时间长的sql
以下内容来自mysql手册: 13.5.5.3. KILL语法 KILL [CONNECTION | QUERY] thread_id 每个与mysqld的连接都在一个独立的线程里运行,您可以使用SH ...
- mysql uroot e_批量 kill mysql 连接
事故重现,并且加入一些后期想到的想法作为演义. 今天 mysql 服务器负载过高, 主库上主要是写的操作,首先看有没有锁表的,发现没有.mysql -uroot -e "show proce ...
- linux 批量kill java进程
linux 批量kill java进程 ps -ef |grep java |grep -v grep|awk '{print $2}'|xargs kill -9
- mysql kill 1095_mysql root用户kill connection报ERROR 1095 (HY000): You are not owner of thread N
今日某系统mysql root用户kill connection时报ERROR 1095 (HY000): You are not owner of thread N 按说通过root用户具有supe ...
- linux下如何批量杀进程,Linux下如何批量Kill多个进程
你知道Linux下如何批量Kill多个进程吗?灵活使用linux系统对于我们的学习和日常工作是非常重要的,那么下面我们就跟爱站小编一起去看看Linux下批量Kill多个进程的方法. ps -ef|gr ...
- mysql卡住锁表 processlist explain
1.记一次order by desc limit导致的查询慢: explain分析一下这条语句: explain select a.id,a.q_user,a.q_showtime,a.thumb,a ...
- Mysql 中 show full processlist
processlist命令的输出结果显示了有哪些线程在运行,可以帮助识别出有问题的查询语句,两种方式使用这个命令. 1. 进入MySQL/bin目录下输入mysqladmin processlist; ...
最新文章
- 漂亮的HTML表格 - ebirdfighter的日志 - 网易博客
- 完全删除垃圾Q+!!!
- 做好数据再利用,让企业数据价值发挥最大
- 一句话设置当前控制器的view跟随键盘起伏,妈妈再也不用担心键盘挡住输入框了...
- [转] JavaScript中的属性:如何遍历属性
- α测试,Beta测试
- UnicodeEncodeError: 'gbk' codec can't encode character '\xeb' in position 20: illegal multibyte sequ
- MySQL 8.0.22 源码编译安装全过程
- 火狐谷歌浏览器油猴安装过程,扩展一个看付费视频脚本为例,学习通,云课堂等软件辅助学习也能做
- 前端之路:平凡中的小事,有点鸡汤的感觉哟!
- 王军生老师---银行领域高端讲师(王军生)
- ylbtech-LanguageSamples-Indexers(索引器)
- AD9361官方例程发送端数据流向
- 苹果CMSv10系统标签,仿站必备
- tensorflow2实现vnet
- 【Netty源码系列(一)】SpringBoot整合Netty实现多端口绑定
- 华南理工大学珠海学院计算机,慕了!盘点那些有“私家游泳池”的广东高校!考上就算捡到啦!...
- WPS广告投放的优势!WPS广告投放的展现形式
- 写给英语和数学都不怎么好的游戏开发爱好者
- 干货!小样本分子性质预测新方法——性质感知的关系网络