Pular para o conteúdo

Resolvendo waiting ou idle transaction no PostgreSQL

Dica publicada em Shell Script / Miscelânea
Caio Ferreira Dias caio
Hits: 18.152 Categoria: Shell Script Subcategoria: Miscelânea
  • Indicar
  • Impressora
  • Denunciar
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Resolvendo waiting ou idle transaction no PostgreSQL

Por diversas vezes me deparo com usuários conectados ao banco de dados com a sua conexão travando alguma tabela, nisso causa um desconforto maior pois todos as conexões que estão tentando utilizar esta tabela também ficarão "travadas".

Para resolver isso crie um script que irá derrubar estas conexões.

# nano processo.sh

Cole as seguintes linhas:

#!/bin/bash

for X in `ps aux | grep postgres | grep $1 | awk {'print $2'}`;
do
kill $X;
done
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Salve e torne-o para executável:

# chmod +x processo.sh

E execute da seguinte forma:

# ./processo.sh waiting
ou
# ./processo.sh transaction

Este processo pode ser adaptado para ser feito de tempos em tempos no crontab.

Obs.: O campo "grep postgres" só coloquei para sempre só funcionar com conexões do postgres, para não correr o risco de matar um processo importante.

O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Verificar triggers desabilitadas no PostgreSQL

Ubuntu 11.04 - Placa wireless parou de funcionar com o kernel 2.6.39.x?

Autovacuum do PostgreSQL

Script Reindex PostgreSQL com envio de email de notificação

Instalador automático do Java JRE Oracle

ShellDocTemplate - Template para documentação de códigos em Shell Script

Aliases Cores

Utilizando o pastebin pelo terminal Linux

Atualizando o Ubuntu com uma linha

#1 Comentário enviado por luizvida em 16/08/2011 - 23:02h
E mesmo...? Hum... Coisa feia...

Contribuir com comentário

Entre na sua conta para comentar.