MySQL kill toate conexiunile unui user
MySQL nu are o comanda cu ajutorul careia putem sa terminam toate conexiunile unui utilizator. Din acest motiv, vom folosi functia de CONCAT pentru a combina comanda “KILL” cu ID-ul conexiuniulor utilizatorului problema, in exemplul de fata “my-user”, iar lista o vom insera intr-un fisier “process_list.txt”. Dupa acest pas, importam lista si se vor executa comenzile din lista (KILL PID1; KILL PID2, KILL PID3; etc).
Atentie ! Comenzile de mai jos vor inchide conexiuni ! Asigurati-va ca ati definit utilizatorul corect !
SELECT CONCAT('KILL ',id,';') FROM information_schema.processlist WHERE user='my-user' INTO OUTFILE '/var/lib/mysql-files/process_list.txt';
source /var/lib/mysql-files/process_list.txt
exit
Dupa ce am rulat comanda, trebuie sa stergem fisierul, in caz contrar, data viitoare cand vrem sa rulam aceiasi comanda vom primi o eroare cum ca fisierul deja exista.
rm -rf /var/lib/mysql-files/process_list.txt