vai no contrib start-scripts la no source e copia pro seu init.d modificando o seu pgdata  no arquivo


Em 23/09/2009 às 21:14 horas, [email protected] escreveu:
Tarcísio Sassara escreveu:
Olá pessoal.

Motivação:
Uma das coisas que já resolvi é não utilizar o pacote de instalação do debian para a próxima aplicação.
Minha preocupação é a de sempre manter o banco rodando sempre na ultima versão corrente.
Fiz alguns testes para a migração da minha base da versão 8.3 para a 8.4 rodando a 
versão antiga simultâneamente mudando a porta de comunicação e tudo ocorreu muito bem.

O problema:
Minha duvida é como configurar o serviço para inicializar e parar automaticamente com o SO usando o
init.d que é um dos padrões do debian para esta tarefa. Gostaria de chamar o pg_ctl start e stop no momento correto.

Tentei aprender algo com a maneira que o pacote do postgres no debian faz mas é "meio doido".

Se alguém puder me ajudar, ou tiver um material legal sobre o assunto vou agradecer bastante.
Dei uma pesquisada sobre o init.d mas de qualquer maneira, gostaria de mais informações relacionadas ao postgres.

Valeu!

--
Tarcisio F. Sassara

_______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Boa noite Tarcísio.

Há algum tempo tive o mesmo problema, abaixo uma descrição rápida da solução que encontrei:


Iniciando o servidor de banco de dados PostgreSQL no boot do Debian


Script para postgres como serviço e iniciar tal serviço no boot do Debian

#!/bin/sh
# pg_script
# Controla start / stop do Postgresql

case "$1" in
start) echo -n "Iniciando servico do PostgreSQL";
/bin/su - postgres -c "/usr/local/pgsql/bin/pg_ctl start -D /usr/local/pgsql/data" > logfile 2>&1
;;
stop) echo -n "Parando serviço do PostgreSQL";
/bin/su - postgres -c "/usr/local/pgsql/bin/pg_ctl stop -D /usr/local/pgsql/data" > logfile 2>&1
;;
restart) echo -n "Reiniciando serviço PostgreSQL";
/bin/su - postgres -c "/usr/local/pgsql/bin/pg_ctl restart -D /usr/local/pgsql/data" > logfile 2>&1
;;
esac
exit 0


Link simbólico para executar o script na runlevel 2

cd /etc/rc2.d
ln -s ../init.d/pg_script S50pg_script
telinit rc2.d

Saída do comando 'netstat -tuapen'

Conexões Internet Ativas (servidores e estabelecidas)
Proto Recv-Q Send-Q Endereço Local          Endereço Remoto         Estado      User       Inode       PID/Program name
tcp        0      0 0.0.0.0:111             0.0.0.0:*               OUÇA       0          4225        1502/portmap   
tcp        0      0 0.0.0.0:34256           0.0.0.0:*               OUÇA       0          4295        1513/rpc.statd 
tcp        0      0 0.0.0.0:113             0.0.0.0:*               OUÇA       0          5377        2225/inetd     
tcp        0      0 0.0.0.0:22              0.0.0.0:*               OUÇA       0          5008        1907/sshd      
tcp        0      0 127.0.0.1:631           0.0.0.0:*               OUÇA       0          5074        1934/cupsd     
tcp        0      0 127.0.0.1:5432          0.0.0.0:*               OUÇA       1001       6477        2380/postgres  
tcp        0      0 127.0.0.1:25            0.0.0.0:*               OUÇA       0          5274        2201/exim4     
tcp        0      0 127.0.0.1:6010          0.0.0.0:*               OUÇA       1000       8120        2721/0         
tcp        0    160 192.168.0.244:22        10.200.110.54:50489     ESTABELECIDA 0          8082        2717/sshd: leandro
tcp6       0      0 :::22                   :::*                    OUÇA       0          5006        1907/sshd      
tcp6       0      0 ::1:631                 :::*                    OUÇA       0          5075        1934/cupsd     
tcp6       0      0 ::1:5432                :::*                    OUÇA       1001       6478        2380/postgres  
tcp6       0      0 ::1:6010                :::*                    OUÇA       1000       8121        2721/0         
udp        0      0 0.0.0.0:68              0.0.0.0:*                           0          6116        2336/dhclient  
udp        0      0 0.0.0.0:50629           0.0.0.0:*                           105        4979        1895/avahi-daemon:
udp        0      0 0.0.0.0:841             0.0.0.0:*                           0          4281        1513/rpc.statd 
udp        0      0 0.0.0.0:5353            0.0.0.0:*                           105        4977        1895/avahi-daemon:
udp        0      0 0.0.0.0:58734           0.0.0.0:*                           0          4292        1513/rpc.statd 
udp        0      0 0.0.0.0:111             0.0.0.0:*                           0          4224        1502/portmap   
udp        0      0 127.0.0.1:46832         127.0.0.1:46832         ESTABELECIDA 1001       6485        2380/postgres  
udp        0      0 0.0.0.0:631             0.0.0.0:*                           0          5078        1934/cupsd     
udp6       0      0 :::35555                :::*                                105        4980        1895/avahi-daemon:
udp6       0      0 :::5353                 :::*                                105        4978        1895/avahi-daemon:

Dando um olhada no pacote para instalação do PostgreSQL 8.3.5 acabei descobrindo que existem alguns scripts de inicialização distribuídos junto do PostgreSQL (creio que este serviço esta disponível a partir de versões mais atuais do servidor) no diretório contrib/start-scripts. Para instalar estes scripts é necessário o privilégio de root.

Fonte:

PostgreSQL - Tradução da Documentação para o Português do Brasil.
http://pgdocptbr.sourceforge.net/



Espero ter ajudado.


-- 

Leandro Hamid
SERPRO - Serviço Federal de Processamento de Dados
Maito: [email protected]
Maito: [email protected]
Skype: leandro_hamid
http://www.serpro.gov.br
Weblog: http://sysaprendiz.wordpress.com/
GNU/Linux User #485051
--> The blue screen of the death <--


"Esta mensagem do SERVIÇO FEDERAL DE PROCESSAMENTO DE DADOS (SERPRO), empresa pública federal regida pelo disposto na Lei Federal nº 5.615, é enviada exclusivamente a seu destinatário e pode conter informações confidenciais, protegidas por sigilo profissional. Sua utilização desautorizada é ilegal e sujeita o infrator às penas da lei. Se você a recebeu indevidamente, queira, por gentileza, reenviá-la ao emitente, esclarecendo o equívoco."

"This message from SERVIÇO FEDERAL DE PROCESSAMENTO DE DADOS (SERPRO) -- a government company established under Brazilian law (5.615/70) -- is directed exclusively to its addressee and may contain confidential data, protected under professional secrecy rules. Its unauthorized use is illegal and may subject the transgressor to the law's penalties. If you're not the addressee, please send it back, elucidating the failure."
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a