Monitorar consultas ativas

Esta página descreve como monitorar e solucionar problemas das consultas que estão ativas no seu banco de dados. O monitoramento dessas consultas pode ajudar a identificar as causas de latência do sistema e o alto uso da CPU.

No painel do Query Insights, você pode ver um resumo das transações ativas e uma lista de transações com consultas e estatísticas associadas. As transações são exibidas pelo horário de início da transação. Se houver um número grande de consultas em execução, os resultados poderão ser limitados a um subconjunto do total de consultas.

Antes de começar

Para monitorar consultas ativas, use o Cloud SQL Enterprise ou o Cloud SQL Enterprise Plus.

Para encerrar uma sessão ou uma transação de longa duração em consultas ativas, use o Cloud SQL Enterprise Plus na instância do Cloud SQL.

Para mais informações sobre as edições do Cloud SQL, consulte Introdução às edições do Cloud SQL.

Papéis e permissões necessárias

Para receber as permissões necessárias a fim de visualizar consultas ativas, peça que o administrador conceda a você os seguintes papéis do IAM no projeto que hospeda a instância do Cloud SQL:

Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.

Esses papéis predefinidos têm as permissões necessárias para visualizar consultas ativas. Para acessar as permissões exatas que são necessárias, expanda a seção Permissões necessárias:

Permissões necessárias

As permissões a seguir são necessárias para visualizar consultas ativas:

  • Visualizar o resumo da atividade do banco de dados e transações de longa duração:
    • databaseinsights.activeQueries.fetch
    • databaseinsights.activitySummary.fetch

Essas permissões também podem ser concedidas com funções personalizadas ou outros papéis predefinidos.

Ativar consultas ativas

Ao ativar o Query Insights, você ativa as consultas ativas automaticamente. Para encerrar uma sessão ou transação de longa duração em consultas ativas, use o Query Insights para o Cloud SQL Enterprise Plus.

Desativar consultas ativas

Não é possível desativar consultas ativas sem desativar o Query Insights. Para desativar consultas ativas e o Query Insights, consulte Desativar o Query Insights.

Visualizar consultas ativas

Para visualizar as consultas ativas, siga estas etapas:

  1. No Google Cloud console, acesse a página Instâncias do Cloud SQL.

    Acesse "Instâncias do Cloud SQL"

  2. Para abrir a página Visão geral de uma instância, clique no nome da instância.

  3. Siga um dos procedimentos abaixo para exibir o painel do Query Insights:

    • Selecione a guia Query Insights.
    • Clique em Acessar o Query Insigths para ver informações mais detalhadas sobre consultas e desempenho. O painel do Query Insights abre. Ele mostra detalhes sobre a instância na parte superior.
  4. Clique na guia Consultas ativas.

    Nela, é possível modificar as informações de consulta que aparecem na tabela Transações em execução há mais tempo:

    • Bancos de dados: filtra a carga de consulta em um banco de dados específico ou em todos os bancos de dados.
    • Usuário: filtra a carga de consulta de uma conta de usuário específica.

Ver consultas ativas normalizadas

É possível ver uma lista das principais transações de longa duração com consultas ativas normalizadas no painel do Query Insights. Uma consulta ativa normalizada remove dados sensíveis e retorna um resumo. O resumo é igual para valores diferentes usados no exemplo a seguir:

  • Consultas regulares

    • select * from test_table where id=1;
    • select * from test_table_where id=2;
  • Resumo ou consulta normalizada

    • select * from test_table where id=?;

Uma consulta executada em sessões diferentes é exibida como entradas diferentes no painel.

Ver as principais transações em execução há mais tempo

A tabela Transações em execução há mais tempo no painel do Query Insights contém as seguintes colunas:

Nome da coluna Descrição
ID da sessão Identificador exclusivo da sessão.
Consulta Texto da consulta SQL.
Estado da sessão O estado da sessão.
Duração da consulta Há quanto tempo a consulta está em execução.
ID da sessão de bloqueio O ID da sessão que está bloqueando a sessão.
Tipo de evento de espera O tipo de evento de espera, se a solicitação estiver bloqueada para execução de consulta.
Recurso de espera O recurso para o qual a solicitação está aguardando no momento, se a solicitação estiver bloqueada para execução de consulta.
Duração da espera da transação A duração da espera atual, se a sessão estiver bloqueada.
Leituras lógicas O número de leituras lógicas que foram realizadas pela solicitação.
Leituras O número de leituras que foram realizadas pela solicitação.
Gravações O número de gravações que foram realizadas pela solicitação.
Banco de dados Banco de dados em que a sessão está em execução.
Usuário Nome do usuário conectado ao banco de dados.
Endereço do cliente O endereço IP específico do cliente que enviou uma consulta.
Tempo de CPU (ms) O tempo de CPU em milissegundos usado pela solicitação.
Nome do aplicativo Nome do aplicativo que iniciou a sessão.
Linhas da transação modificadas Número de linhas retornadas ao cliente por essa consulta.
% concluído Percentual de trabalho concluído, se a consulta informar o progresso.
Memória de consulta concedida O número de páginas alocadas para a execução da solicitação.
Ação Contém um link para encerrar uma sessão.

A tela é atualizada automaticamente a cada 60 segundos.

Use o Opções de exibição de conteúdo... menu vertical para filtrar as colunas que você quer mostrar.

Encerrar uma sessão

Para encerrar uma sessão ou transação de longa duração, use o Cloud SQL Enterprise Plus e ative o Query Insights para o Cloud SQL Enterprise Plus.

As operações de longa duração podem levar mais tempo para serem encerradas.

Para encerrar uma consulta ou transação, siga estas etapas:

  1. Na tabela Transação em execução há mais tempo, selecione uma consulta.
  2. Na coluna Ação, clique em Encerrar sessão.
  3. Na janela Encerrar sessão, clique em Confirmar.

A seguir