Como iniciar o PostgreSQL Server no Mac OS X via Homebrew

Instalar PostgreSQL via Homebrew

A maior parte dos utilizadores de OS X sabem de Homebrew, mas Homebrew é um gestor de pacotes para OS X que lhe permite instalar e executar facilmente uma enorme biblioteca de aplicações e utilitários.

Não vamos passar por todo (embora curto) o processo de instalação do Homebrew, mas se desejar instalar Homebrew e utilizá-lo para a gestão do PostgreSQL, verifique o comando de instalação na documentação oficial. Se não tiver a certeza se o Homebrew está instalado, tente o comando which brew do terminal para verificar.

Once Homebrew está instalado, pode instalar o PostgreSQL emitindo os seguintes comandos no seu terminal:

$ brew update$ brew doctor$ brew install postgres

Os dois primeiros comandos são utilizados para actualizar Homebrew e reportar quaisquer potenciais problemas (se necessário). Depois, claro, brew install postgres é o comando de uma linha para instalar o PostgreSQL.

Deverá ver uma boa quantidade de informação útil na saída durante a instalação, grande parte da qual deverá ser copiada para utilização nas secções seguintes.

Usar um Agente de Lançamento e Plist para Lançar o PostgreSQL na Arranque

Na maioria dos casos, provavelmente desejará ter o lançamento do PostgreSQL quando iniciar o seu sistema, por isso terá de dizer ao seu computador que este é o seu desejo.

P>Primeiro, terá de criar um directório para o seu LaunchAgents residir (se o directório ainda não existir). LaunchAgents no OS X são scripts simples utilizados por launchd que fazem com que o sistema execute programas ou código durante o arranque.

Criar o seu user específico LaunchAgents directório com este comando, se necessário:

$ mkdir -p ~/Library/LaunchAgents

Agora terá de criar uma ligação simbólica a partir do script que realmente permita ao Postgres correr para o directório LaunchAgents. Uma ligação simbólica é semelhante à criação de uma nova cópia de um ficheiro para utilização noutro directório, mas como a ligação é ‘simbólica’, a ligação é apenas um endereço de reencaminhamento: qualquer pedido feito para esse local de ligação simbólica é na realidade “reencaminhado” ou redireccionado para o local onde o ficheiro real realmente reside.

Link para o ficheiro plist (lista de propriedades) que foi gerado por Homebrew e colocar esse novo link simbólico em LaunchAgents com este comando:

$ ln -sfv /usr/local/opt/postgresql/*.plist ~/Library/LaunchAgents

Nota: Verificar duas vezes se o comando está correcto: Deveria ter feito parte da saída de instalação mencionada acima quando Homebrew instalou inicialmente Postgres.

Finalmente, carregamos o novo link simbólico’ed LaunchAgent ficheiro utilizando o comando launchctl load, que é especificamente o que informa o computador para executar este script e iniciar o Postgres quando o computador é lançado. Mais uma vez, o comando exacto para entrar para a sua própria instalação será uma saída durante a instalação do Postgres em Homebraw, mas deve parecer algo como isto:

$ launchctl load ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist

Iniciar manualmente o PostgreSQL

Para iniciar manualmente o Postgres sem reiniciar, mais uma vez deve ser capaz de usar o comando que saiu durante a instalação, desta forma:

$ postgres -D /usr/local/var/postgres

Isto tentará lançar o Postgres em modo daemon, o que significa que será executado como um processo de fundo sem assumir o seu terminal.

Iniciar/Parar PostgreSQL Sem Homebraico

No caso de não ter (ou não desejar utilizar) Homebraico para Postgres, no entanto já tem o Postgres instalado, também pode iniciar manualmente com pg_ctl, que é o utilitário de lançamento fornecido pelo próprio Postgres.

Isto iniciará o Postgres (assumindo os directórios predefinidos):

$ pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log start

E isto irá parar o Postgres:

pg_ctl -D /usr/local/var/postgres stop -s -m fast

Solução de Problemas de Arranque: Executou o initdb?

Em alguns casos, se tiver problemas em executar o Postgres, certifique-se de que executou o comando initdb uma vez, o que faz com que o Postgres inicialize o cluster da base de dados para uma nova instalação e lhe permite ligar-se com o comando padrão postgres user.

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *