Monitorize consultas ativas

Esta página descreve como monitorizar e resolver problemas das consultas ativas na sua base de dados. A monitorização destas consultas pode ajudar a identificar as causas da latência do sistema e da elevada utilização da CPU.

No painel de controlo Estatísticas das consultas, pode ver um resumo das transações ativas e uma lista de transações com estatísticas e consultas associadas. As transações são apresentadas pela hora de início da transação. Se houver um grande número de consultas em execução, os resultados podem ser limitados a um subconjunto do total de consultas.

Antes de começar

Para monitorizar consultas ativas, pode usar a edição Enterprise do Cloud SQL ou a edição Enterprise Plus do Cloud SQL.

Para terminar uma sessão ou uma transação de execução prolongada em consultas ativas, tem de usar a edição Cloud SQL Enterprise Plus para a sua instância do Cloud SQL.

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

Funções e autorizações necessárias

Para receber as autorizações de que precisa para ver as consultas ativas, peça ao seu administrador que lhe conceda as seguintes funções do IAM no projeto que aloja a instância do Cloud SQL:

Para mais informações sobre a atribuição de funções, consulte o artigo Faça a gestão do acesso a projetos, pastas e organizações.

Estas funções predefinidas contêm as autorizações necessárias para ver consultas ativas. Para ver as autorizações exatas que são necessárias, expanda a secção Autorizações necessárias:

Autorizações necessárias

São necessárias as seguintes autorizações para ver consultas ativas:

  • Veja o resumo da atividade da base de dados e as transações de longa duração:
    • databaseinsights.activeQueries.fetch
    • databaseinsights.activitySummary.fetch

Também pode conseguir estas autorizações com funções personalizadas ou outras funções predefinidas.

Ative as consultas ativas

Quando ativa as estatísticas de consultas, ativa automaticamente as consultas ativas. Para poder terminar uma sessão ou uma transação de longa duração em consultas ativas, tem de usar as estatísticas de consultas para a edição Cloud SQL Enterprise Plus.

Desative consultas ativas

Não pode desativar as consultas ativas sem desativar as estatísticas de consultas. Para desativar consultas ativas e estatísticas de consultas, consulte o artigo Desative as estatísticas de consultas.

Veja as consultas ativas

Para ver as suas consultas ativas, conclua os seguintes passos:

  1. Na Google Cloud consola, aceda à página Instâncias do Cloud SQL.

    Aceda a Instâncias do Cloud SQL

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

  3. Realize um dos seguintes passos para apresentar o painel de controlo Estatísticas de consultas:

    • Selecione o separador Estatísticas de consultas.
    • Clique em Aceder às estatísticas de consultas para ver informações mais detalhadas sobre as consultas e o desempenho. É apresentado o painel de controlo Estatísticas de consultas. Apresenta detalhes sobre a instância na parte superior.
  4. Clique no separador Consultas ativas.

    Aqui, pode modificar as informações da consulta apresentadas na tabela Transações com maior duração:

    • Base de dados: filtra a carga de consultas numa base de dados específica ou em todas as bases de dados.
    • Utilizador: filtra o carregamento de consultas de uma conta de utilizador específica.
    • Tabela de dados de resumo de todas as consultas ativas: oferece uma vista geral de todas as consultas ativas, apresentando o total de ligações com base nos seguintes parâmetros:

      1. Distribuição de ligações ativas categorizadas por estado de ligação.
      2. Distribuição de transações ativas com base no estado da transação.
      3. Distribuição das durações das consultas.
    • Transações com execução mais longa: fornece uma vista geral das 50 principais consultas em execução (no estado ativo) com base no tempo de execução descendente. Pode filtrar e ordenar as consultas ativas na tabela.

Veja as consultas ativas normalizadas

Pode ver uma lista das principais transações de execução prolongada com consultas ativas normalizadas no painel de controlo Estatísticas de consultas. Uma consulta ativa normalizada remove dados confidenciais e devolve um resumo. O resumo é o mesmo para diferentes valores usados no exemplo seguinte:

  • 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 é apresentada como entradas diferentes no painel de controlo.

Veja as principais transações de execução mais longa

A tabela Transações com maior duração no painel de controlo Estatísticas de consultas contém as seguintes colunas:

Nome da coluna Descrição
ID do processo Identificador exclusivo da associação.
Consulta Texto da consulta SQL.
Estado da transação O estado de execução atual da transação. Os valores permitidos incluem: RUNNING, LOCK WAIT, ROLLING BACK e COMMITTING.
Estado da discussão O estado do segmento (ou estado da consulta) indica o estado atual do segmento ativo.
Hora de início da transação A data/hora em que a transação começou a ser executada.
Duração da transação A duração da transação ativa atual em segundos.
Duração da espera da transação A duração da espera em segundos na transação ativa atual.
Duração do estado da discussão Tempo decorrido na consulta.
Linhas de transações bloqueadas Número de linhas bloqueadas pela transação ativa atual.
Linhas de transações modificadas Número de linhas modificadas pela transação ativa atual.
Bases de dados Nome da base de dados na qual esta ligação está a ser executada.
Nome de utilizador Nome do utilizador ligado à base de dados.
Endereço do cliente O endereço IP do cliente a partir do qual um utilizador se liga à base de dados.
Ação Contém um link para terminar uma transação.

O ecrã é atualizado automaticamente a cada 60 segundos.

Rescinda uma associação

Para terminar uma ligação ou uma transação de execução prolongada em consultas ativas, tem de usar a edição Cloud SQL Enterprise Plus e ativar as estatísticas de consultas para a edição Cloud SQL Enterprise Plus.

As operações de longa duração podem demorar mais tempo a terminar.

Para terminar uma consulta ou uma transação, conclua os passos seguintes:

  1. Na tabela Transação com execução mais longa, selecione uma consulta.
  2. Na coluna Ação, clique em Terminar associação.
  3. Na janela Terminar ligação, clique em Confirmar.

Um pedido de base de dados é devolvido imediatamente, enquanto a rescisão ocorre em segundo plano.

A página é atualizada após o início do encerramento. Se a rescisão falhar, não é devolvida uma mensagem de erro nem uma notificação. A consulta continua a ser apresentada na lista de consultas ativas. Se o encerramento for bem-sucedido, a consulta deixa de ser apresentada na lista. Se o encerramento exigir uma reversão, a coluna Estado da transação mostra o estado A REVERTER, o que significa que o encerramento ainda está em curso.

O que se segue?