Ah! Havia esquecido do "problema" ...
<pseudo-code>
Enquanto USUARIO IN
SELECT rolname
FROM pg_roles
WHERE rolname <> 'postgres'
Execute:
ALTER ROLE $USUARIO NOLOGIN;
Fim Enquanto
</pseudo-code>
Obviamente restaurar após a volta do backup.
-Leo
On Nov 13, 2007 10:21 PM, Leonardo Cezar <[EMAIL PROTECTED]> wrote:
> On Nov 9, 2007 9:46 AM, Sebastian SWC <[EMAIL PROTECTED]> wrote:
> > pessoal, bom dia!!!
> > Alguém sabe me informar como posso "matar" uma conexão com o postgres
> > remotamente?
>
> pg_cancel_backend
>
> > estou com problemas que alguns usuários ficam pendurados quando tento fazer
> > o restore automaticamente (através de uma rotina que desenvolvi pra isso) e
> > é necessário que nimguém acesse o sistema.
>
> <pseudo-code>
> Enquanto PID IN
> SELECT procpid
> FROM pg_stat_activity
> WHERE usename <> 'postgres'
> Faça:
> pg_cancel_backend($PID)
> Fim Enquanto
> </pseudo-code>
>
> > o restore é feito deletando a base de dados, criando ela e restaurando o
> > backup com ajuda do pg_restore.
>
> Hmm ... Porque não utilizar alguma ferramenta ETL e carregar apenas a
> diferença entre as bases??
>
> -Leo
> --
> Leonardo Cezar
> PgConBrasil: dias 7-8 dezembro 2007
> http://pgcon.postgresql.org.br
>
--
Leonardo Cezar
PgConBrasil: dias 7-8 dezembro 2007
http://pgcon.postgresql.org.br
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral