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.