Cand serverul MySQL incepe sa se miste greu ne intereseaza care sunt procesele in lucru. Pentru a vedea lista de procese, vom folosi comanda SHOW PROCESSLIST;:
mysql> SHOW PROCESSLIST; +---------+------+-----------+------+---------+------+-------+------------------+ | Id | User | Host | db | Command | Time | State | Info | +---------+------+-----------+------+---------+------+-------+------------------+ | 2684323 | root | localhost | NULL | Query | 0 | NULL | SHOW PROCESSLIST | +---------+------+-----------+------+---------+------+-------+------------------+ 1 row in set (0.00 sec) mysql> |
Daca ne intereseaza un format mai usor de citit, putem inlocui caracterul ; de la sfarsitul comenzii cu \G:
mysql> SHOW PROCESSLIST\G *************************** 1. row *************************** Id: 2684424 User: root Host: localhost db: NULL Command: Query Time: 0 State: NULL Info: SHOW PROCESSLIST 1 row in set (0.00 sec) mysql> |
Ambele comenzi vor returna lista de procese MySQL care ruleaza in momentul de fata – in cazul nostru un singur proces. Pe linia sau coloana Id (in functie de terminatia comenzii) putem vedea identificatorul procesului. Cu ajutorul acestui identificator putem opri procesul in cauza, daca este consumator de resurse:
mysql> SHOW PROCESSLIST\G *************************** 1. row *************************** Id: 2684622 User: root Host: localhost db: NULL Command: Query Time: 0 State: NULL Info: SHOW PROCESSLIST 1 row in set (0.01 sec) mysql> kill 2684622; Query OK, 0 rows affected (0.00 sec) mysql> |
Astfel, putem identifica si opri queryurile care datorita complexitatii sau proastei organizari ajung sa consume foarte multe resurse in timp;