En esta página, se describe cómo supervisar y solucionar problemas de las consultas que están activas en tu base de datos. La supervisión de estas consultas puede ayudar a identificar las causas de la latencia del sistema y el uso alto de CPU.
En el panel de estadísticas de consultas, puedes ver un resumen de las transacciones activas y una lista de transacciones con consultas y estadísticas asociadas. Las transacciones se muestran según la hora de inicio de la transacción. Si hay una gran cantidad de consultas en ejecución, los resultados pueden estar limitados a un subconjunto del total de consultas.
Puedes usar la asistencia de Gemini in Databases para observar y solucionar problemas de tus recursos de Cloud SQL para MySQL. Para obtener más información, consulta Observa y soluciona problemas con la asistencia de Gemini.Antes de comenzar
Para ver tus consultas activas, debes hacer lo siguiente:
- Configurar Gemini en bases de datos.
- Crear un rol personalizado y agrega los siguientes permisos:
Tareas Funciones Permisos Ver recomendaciones databaseinsights.viewer
databaseinsights.activeQueries.fetch
databaseinsights.activitySummary.fetch
Finalizar recomendaciones databaseinsights.operationsAdmin
N/A
Visualiza las consultas activas
Para ver tus consultas activas, haz lo siguiente:
Agrega este rol para cada usuario que vea búsquedas activas.
En la consola de Google Cloud, ve a la página Instancias de Cloud SQL.
Para abrir la página de Descripción general de una instancia, haz clic en su nombre.
Realiza una de las siguientes acciones para mostrar el panel Estadísticas de consultas:
- Selecciona la pestaña Estadísticas de consultas.
- Haz clic en Ir a Estadísticas de consultas para obtener información más detallada sobre las búsquedas y el rendimiento. Se abrirá el panel de Estadísticas de consultas. Muestra los detalles sobre la instancia en la parte superior.
Haz clic en la pestaña Vista de consulta activa.
Desde aquí, puedes modificar la información de la consulta que aparece en la tabla Transacciones más largas:
- Bases de datos: Filtra la carga de consultas en una base de datos específica o en todas las bases de datos.
- Usuario: Filtra la carga de consultas de una cuenta de usuario específica.
- Cuadro de evaluación de resumen de todas las consultas activas: proporciona una descripción general de todas las consultas activas con el total de conexiones según los parámetros que se indican a continuación.
- Distribución de las conexiones activas clasificadas por estado de conexión
- Distribución de las transacciones activas según el estado de la transacción
- Distribución de las duraciones de las consultas
- Transacciones más largas en ejecución: Proporciona una descripción general de las 50 consultas en ejecución principales (en el estado activo) según el tiempo de ejecución descendente. Puedes filtrar y ordenar las consultas activas en la tabla.
Visualiza consultas activas normalizadas
Puedes ver una lista de las principales transacciones de larga duración con consultas activas normalizadas en el panel Estadísticas de consultas. Una consulta activa normalizada quita los datos sensibles y muestra un resumen. El resumen es el mismo para los diferentes valores que se usan en el siguiente ejemplo:
Consultas regulares
select * from test_table where id=1;
select * from test_table_where id=2;
Resumen o consulta normalizada
select * from test_table where id=?;
Una consulta que se ejecuta en diferentes sesiones se muestra como entradas diferentes en el panel.
Visualiza las transacciones más largas en ejecución
La tabla Transacciones más larga de ejecución en el panel Estadísticas de consultas contiene las siguientes columnas:
Nombre de la columna | Descripción |
---|---|
ID de proceso | Identificador único de la conexión. |
Consulta | Texto de consulta de SQL. |
Estado de transacción | Estado actual de ejecución de la transacción. Los valores permitidos incluyen los siguientes: RUNNING , LOCK WAIT , ROLLING BACK y COMMITTING . |
Estado de subprocesos | El estado de subproceso (o estado de consulta) indica el estado actual del subproceso activo. |
Hora de inicio de la transacción | La marca de tiempo del momento en que la transacción comenzó su ejecución. |
Duración de la transacción | Duración de la transacción activa actual en segundos. |
Duración de espera de la transacción | La duración de la espera en segundos en la transacción activa actual. |
Duración del estado del subproceso | Tiempo transcurrido en la consulta. |
Filas de la transacción bloqueadas | Cantidad de filas bloqueadas por la transacción activa actual. |
Filas de la transacción modificadas | Cantidad de filas modificadas por la transacción activa actual. |
Base de datos | Nombre de la base de datos en la que se ejecuta esta conexión. |
Nombre de usuario | Nombre del usuario conectado a la base de datos. |
Dirección del cliente | Es la dirección IP del cliente desde la que un usuario se conecta a la base de datos. |
Acción | Contiene un vínculo para finalizar una transacción. |
La pantalla se actualiza automáticamente cada 60 segundos.
Finaliza una conexión
Para finalizar una consulta o una transacción, debes tener el rol databaseinsights.operationsAdmin
. Para obtener más información, consulta la Referencia de roles básicos y predefinidos de IAM.
Para finalizar una consulta o transacción, completa los siguientes pasos:
- En la tabla Transacción de ejecución más larga, selecciona una consulta.
- En la columna Acción, haz clic en Finalizar conexión.
- En la ventana Finalizar conexión, haz clic en Confirmar.
Una solicitud a la base de datos se muestra de inmediato mientras la cancelación se realiza en segundo plano.