Si se genera una consulta muy compleja en mysql, puede consumir tantos recursos que bloquee a el resto de los procesos, para detectar y eliminar dicha consulta debemos entrar a mysql con:
mysql -u usuario_ferrum -pClave_ferrum
y estando en mysql escribimos:
SHOW FULL PROCESSLIST;
esto nos mostrara algo como esto:
+—–+———-+—————–+——–+———+——+——-+———————–+———-+
| Id | User | Host | db | Command | Time | State | Info | Progress |
+—–+———-+—————–+——–+———+——+——-+———————–+———-+
| 593 | ferrumop | localhost:33240 | DATOS1 | Sleep | 11 | | NULL | 0.000 |
| 595 | ferrumop | localhost:33252 | DATOS1 | Waiting for … | 33 | | NULL | 0.000 |
| 624 | ferrumop | localhost:36965 | DATOS1 | SELECT * FROM … | 15 | | Sorting | 0.000 |
| 625 | ferrumop | localhost | NULL | Query | 0 | init | SHOW FULL PROCESSLIST | 0.000 |
+—–+———-+—————–+——–+———+——+——-+———————–+———-+
Aqui nos muestra que hay algunas conexiones esperando (Waiting) y una que esta realizando el proceso, una vez que identificamos la tarea que esta causando el problema, en este caso la tarea 624, procedemos a cerrarla con:
Kill 624;
Es importante no matar tareas que esten executando funciones como UPDATE, INSERT, DELETE, ya que estas estan modificando la base de datos, y al terminarla la informacion quedaria incompleta.
Si la tarea es un SELECT (lee informacion) no hay problema con terminarla.