Me conecto mysqldesde mi shell de Linux. De vez en cuando ejecuto una SELECTconsulta que es demasiado grande. Imprime e imprime y ya sé que esto no es lo que quise decir. Me gustaría detener la consulta.
Golpear Ctrl+C(un par de veces) mata por mysqlcompleto y me lleva de vuelta al cascarón, así que tengo que volver a conectarme.
¿Es posible detener una consulta sin suicidarse mysql?
mysql
kill
processlist
David B
fuente
fuente

Respuestas:
fuente
mysqlestá imprimiendo ... No puedo ver el mensajeKILL QUERYes ligeramente preferibleKILLpara este caso. De esa forma, se elimina la consulta, pero no la conexión.KILL, pero puede ejecutar:CALL mysql.rds_kill(12345)Solo para agregar
KILL QUERY **Id**de dónde es la identificación de la conexiónshow processlistes más preferible si no desea eliminar la conexión, generalmente cuando se ejecuta desde alguna aplicación.
Para más detalles, puede leer el documento de MySQL aquí
fuente
Conéctate a mysql
muestre la lista de procesos completa:
Mata la consulta específica. Aquí id = 9255451
Si se le niega el permiso, intente este SQL:
fuente
Use
mysqladminpara eliminar la consulta fuera de control:Ejecute los siguientes comandos:
Luego anote la identificación del proceso.
La consulta fuera de control ya no debería consumir recursos.
fuente
Si tiene
mysqladmindisponible, puede obtener la lista de consultas con:Entonces puede detener el proceso mysql que aloja la consulta de larga ejecución:
fuente
Debe ejecutar el siguiente comando para eliminar el proceso.
El parámetro de consulta especifica que debemos eliminar el proceso del comando de consulta.
La sintaxis para matar proceso de la siguiente manera
Por favor, consulte este enlace para más información.
fuente
El autor de esta pregunta menciona que generalmente solo después de que MySQL imprime su salida, se da cuenta de que se ejecutó la consulta incorrecta. Como se señaló, en este caso,
Ctrl-Cno ayuda. Sin embargo, he notado que abortará la consulta actual , si la detecta antes de que se imprima cualquier salida. Por ejemplo:MySQL se ocupa de generar el producto cartesiano de las dos tablas anteriores y pronto se da cuenta de que MySQL no ha impreso ningún resultado en la pantalla (el estado del proceso es Enviando datos ), por lo que escribe
Ctrl-C:Ctrl-Cde manera similar se puede usar para detener unaUPDATEconsulta.fuente