Você pode verificar onde o seu PGDATA está conectando ao pg e emitindo o comando:
show data_directory;
No Ubuntu, geralmente é /var/lib/postgresql/8.3/main/
.
Além disso, você pode: /etc/init.d/postgresql-8.3 reload
Eu fiz algumas alterações no pg_hba.conf e quero que elas tenham efeito. Eu encontrei vários lugares onde as pessoas dizem que eu posso dizer ao PostgreSQL para recarregar, mas existem várias técnicas diferentes listadas, e nenhuma delas funciona para mim ainda.
A referência mais autoritativa que encontrei é para o comando pg_ctl, mas não tenho certeza de onde minha pasta PGDATA está. Eu continuarei procurando.
Estou executando o PostgreSQL 8.3 no Ubuntu 8.10.
Embora a pessoa original que fez a pergunta implique que ele está executando o Ubuntu 8.10 muitas pessoas, usando versões posteriores do Ubuntu podem tropeçar aqui também. E isso pode de fato funcionar com 8.10 também. Eu não sei, eu não tenho nenhuma instalação 8.10 para experimentar ..
Ok, vamos direto ao assunto. Portanto, a maneira "nova" de controlar os serviços é usar o comando service
. Então você pode recarregar as configurações com o seguinte comando:
service postgresql-8.3 reload
naturalmente, você precisa ter os direitos adequados, por isso é mais provável que seja necessário preceder o comando com algo como sudo
ou su -c root
da seguinte forma:
sudo service postgresql-8.3 reload
ou su -c root 'service postgresql-8.3 reload'
P.S. É sugerido na documentação do Ubuntu que algo relacionado a este novo método foi feito lá atrás com o lançamento de 6.10, no entanto, se eu entendi corretamente, não tinha sido usado de maneira mais geral até 9.10.
Opção 1: do shell da linha de comando
su - postgres
/usr/bin/pg_ctl reload
Opção 2: usando o SQL
SELECT pg_reload_conf();
O uso de uma dessas opções não interromperá nenhuma consulta ou conexão ativa com o banco de dados, aplicando assim essas alterações sem problemas.
Isso fará o truque:
kill -HUP $(head -1 $PGDATA/postmaster.pid)
Se você não quiser reiniciar o servidor e apenas enviar um sinal para o postgreSQL, basta digitar o comando:
pg_ctl reload
Eu finalmente encontrei uma técnica que funciona para mim a partir de este artigo . O comando é:
sudo invoke-rc.d postgresql-8.3 reload
Ainda aprecio o feedback sobre qual é a técnica recomendada.
O seguinte deve fazer isso por você:
sudo /etc/init.d/postgresql-8.3 reload