批量殺死MySQL連線的四種方法詳解

2022-10-03 12:21:09 字數 1466 閱讀 3692

方法一

通過information_schema.processlist表中的連線資訊生成需要處理掉的mysql連線的語句臨時檔案,然後執行臨時檔案中生成的指令。

複製** **如下:

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.00ssaoyiyq sec)

方法二殺掉當前所有的mysql連線

複製** **如下:

mysqladmin -uroot -p processlist|awk -f "|" ''|xargs -n 1 mysqladmin -uroot -p kill

殺掉指定使用者執行的連線,這裡為mike

複製** **如下:

mysqladmin -uroot -p processlist|awk -f "|" ''|xargs -n 1 mysqladmin -uroot -p kill

方法三通過shel指令碼實現

複製** **如下:

#殺掉鎖定的mysql連線

for id in `mysqladmin processlist|grep -i locked|awk ''`

do   mysqladmin kill $

done

方法四通過maatkit工具集中提供的mk-kill命令進行

複製** **如下:

#殺掉超過60秒的sql

mk-kill -busy-time 60 -kill

#如果你想先不殺,先看看有哪些sql執行超過60秒

mk-kill -busy-time 60 -print

#如果你想殺掉,同時輸出殺掉了哪些程序

mk-kill -busy-time 60 -print –kill

本文標題: 批量殺死mysql連線的四種方法詳解

本文位址: /shujuku/mysql/124314.html

mysql的四種連線方式 資料庫的四種連線方式

a表 b表 a.id同parent id 存在關係 1 內連線 相當於select a.b.from a,b where a.id b.id select a.b.from a inner join b on a.id b.parent id 結果是 2 左連線 左表的挨個資訊去查詢,查不到則將右邊...

庫存批量的四種方式

庫存批量規則的四種方式 1 批對批。lot for lot,簡稱lfl 因需定量是安全根據需求量決定定貨量,不加任何修訂,是一種動態方法,也是保持庫存量最小的定貨方法。一般用於定貨生產環境下的產品或用於價值較高的物料。合適的應用如面向銷售定單的生產方式 mto 每乙個銷售定單進行mrp的展開,物料專...

mysql 批量更新共有以下四種辦法

replace into test tbl id,dr values 1,2 2,3 x,y insert into test tbl id,dr values 1,2 2,3 x,y on duplicate key update dr values dr create temporary tab...