天天看點

mysql批量結束線程

  今天遇到個情況,一台php請求到後端資料庫的查詢線程全部堵住了,現在要清除這些線程,又不重新開機資料庫,如果用手動kill 'id' 那得執行上千次,不實際,用了一下兩條指令就可以解決問題

SELECT concat('KILL ',id,';') FROM information_schema.processlist WHERE  Host like '10.0.0.46%' and Time >10 INTO OUTFILE '/tmp/a.txt';

source  /tmp/a.txt

--------------------------------

将來源10.0.0.46和查詢時間大于10秒的id歸檔到檔案裡,

cat  /tmp/a.txt

KILL 49947505530;

KILL 49946442549;

KILL 49945416819;

KILL 49944470268;

...

最後導入批量執行

本文轉自 hb_fukua 51CTO部落格,原文連結:http://blog.51cto.com/2804976/1180512