[pgbr-geral] Bloquear usuário durante atualização
Pessoal, Para que eu possa atualizar o sistema, é necessário que nenhum usuário esteja logado no banco. A minha dúvida é: apenas o comando ALTER DATABASE foo CONNECTION LIMIT 0 resolveria? Se o usuário já estiver logado, após rodado o comando descrito, esse usuário conseguirá executar algum comando? []s Danilo ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Bloquear usuário durante atualização
> > Você terá de "chutar" os usuários fora da base, por exemplo: > SELECT pg_terminate_backend (pid) FROM pg_stat_activity; > Mas é bem "à força" isso, se é que me entende, tipo, transações abertas > vão ser interrompidas, o banco não vai esperar commit ou rollback. > > Eu faço como o Flavio citou para desconectar os usuários, com uma pequena diferença... SELECT pg_terminate_backend(pid) FROM pg_stat_activity WHERE pid <> pg_backend_pid() Com isso apenas o meu processo permanece conectado. ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Bloquear usuário durante atualização
Para que eu possa atualizar o sistema, é necessário que nenhum usuário esteja logado no banco. A minha dúvida é: apenas o comando ALTER DATABASE foo CONNECTION LIMIT 0 resolveria? Se o usuário já estiver logado, após rodado o comando descrito, esse usuário conseguirá executar algum comando? Infelizmente você não vai conseguir fazer o que quer, pois os usuários já logados poderão continuar trabalhando, eles não conseguirão porém fazer novas conexões. Você terá de "chutar" os usuários fora da base, por exemplo: SELECT pg_terminate_backend (pid) FROM pg_stat_activity; Mas é bem "à força" isso, se é que me entende, tipo, transações abertas vão ser interrompidas, o banco não vai esperar commit ou rollback. []s Flavio Gurgel ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral