running from force ejemplo mysql

mysql - from - Cómo ver la consulta completa desde SHOW PROCESSLIST



show processlist mysql ejemplo (5)

Cuando emito la consulta MOSTRAR PROCESO, solo se devuelven los primeros 100 caracteres de la consulta SQL en ejecución en la columna de información.

¿Es posible cambiar la configuración de Mysql o emitir un tipo diferente de solicitud para ver la consulta completa (las consultas que veo tienen más de 100 caracteres)


Acabo de leer la documentación de MySQL que, de forma predeterminada, SHOW FULL PROCESSLIST solo enumera los subprocesos de su conexión de usuario actual .

Cita de la documentación de MySQL SHOW FULL PROCESSLIST:

Si tiene el privilegio de PROCESO, puede ver todos los subprocesos.

Por lo tanto, puede habilitar la columna Process_priv en su tabla mysql.user . Recuerda ejecutar FLUSH PRIVILEGES después :)


Lo único malo de la lista de show [full] processlist es que no se puede filtrar el resultado de salida. Por otro lado, al emitir SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST abren las posibilidades de eliminar de la salida cualquier cosa que no desee ver:

SELECT * from INFORMATION_SCHEMA.PROCESSLIST WHERE DB = ''somedatabase'' AND COMMAND <> ''Sleep'' AND HOST NOT LIKE ''10.164.25.133%'' /G


Show Processlist obtiene la información de otra tabla. Aquí es cómo puede extraer los datos y ver la columna ''INFO'' que contiene la consulta completa:

select * from INFORMATION_SCHEMA.PROCESSLIST where db = ''somedb'';

Puede agregar cualquier condición o ignorar según su requerimiento.

El resultado de la consulta se produce como:

+-------+------+-----------------+--------+---------+------+-----------+----------------------------------------------------------+ | ID | USER | HOST | DB | COMMAND | TIME | STATE | INFO | +-------+------+-----------------+--------+---------+------+-----------+----------------------------------------------------------+ | 5 | ssss | localhost:41060 | somedb | Sleep | 3 | | NULL | | 58169 | root | localhost | somedb | Query | 0 | executing | select * from sometable where tblColumnName = ''someName'' |


Ver consulta completa de SHOW PROCESSLIST:

SHOW FULL PROCESSLIST;

O

SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST;