PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

Como iniciar o PostgreSQL Server no Mac OS X via Homebrew

Instale o PostgreSQL via Homebrew


Provavelmente a maioria dos usuários do OS X conhece o Homebrew , mas o Homebrew é um gerenciador de pacotes para OS X que permite instalar e executar facilmente uma enorme biblioteca de aplicativos e utilitários com facilidade.

Não passaremos por todo o processo de instalação (embora curto) do Homebrew, mas se você deseja instalar o Homebrew e usá-lo para gerenciamento do PostgreSQL, confira o comando de instalação na documentação oficial. Se você não tiver certeza se o Homebrew está instalado, tente which brew comando do terminal para verificar.

Depois que o Homebrew estiver instalado, você poderá instalar o PostgreSQL emitindo os seguintes comandos em seu terminal:
$ brew update
$ brew doctor
$ brew install postgres

Os dois primeiros comandos são usados ​​para atualizar o Homebrew e relatar possíveis problemas (se necessário). Então, é claro, brew install postgres é o comando de uma linha para instalar o PostgreSQL.

Você deve ver muitas informações úteis na saída durante a instalação, muitas das quais devem ser copiadas para uso nas próximas seções.

Usando um LaunchAgent e plist para iniciar o PostgreSQL na inicialização


Na maioria dos casos, você provavelmente desejará que o PostgreSQL seja iniciado ao iniciar seu sistema, portanto, você precisará informar ao seu computador que esse é o seu desejo.

Primeiro, você precisará criar um diretório para seus LaunchAgents para residir (se o diretório ainda não existir). LaunchAgents no OS X são scripts simples usados ​​pelo launchd que fazem com que o sistema execute programas ou código durante a inicialização.

Crie seu user -specific LaunchAgents diretório com este comando, se necessário:
$ mkdir -p ~/Library/LaunchAgents

Agora você precisará criar um link simbólico a partir do script que realmente permita que o Postgres seja executado no LaunchAgents diretório. Um link simbólico é semelhante a criar uma nova cópia de um arquivo para uso em outro diretório, mas como o link é 'simbólico', o link é apenas um endereço de encaminhamento:qualquer solicitação feita para esse local do link simbólico é, na verdade, “encaminhada” ou redirecionado para onde o real arquivo realmente reside.

Link para o plist (lista de propriedades) que foi gerado pelo Homebrew e coloque esse novo link simbólico em LaunchAgents com este comando:
$ ln -sfv /usr/local/opt/postgresql/*.plist ~/Library/LaunchAgents

Observação:verifique se o comando está correto:ele deveria ter sido parte da saída da instalação mencionada acima quando o Homebrew instalou o Postgres inicialmente.

Por fim, carregamos o novo link simbólico LaunchAgent arquivo usando o launchctl load comando, que é especificamente o que informa o computador para executar este script e iniciar o Postgres quando o computador for iniciado. Novamente, o comando exato a ser digitado para sua própria instalação será uma saída durante a instalação do Postgres do Homebrew, mas deve ser algo assim:
$ launchctl load ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist

Iniciando o PostgreSQL manualmente


Para inicializar manualmente o Postgres sem reinicializar, novamente você deve poder usar o comando que foi gerado durante a instalação, assim:
$ postgres -D /usr/local/var/postgres

Isso tentará iniciar o Postgres no daemon mode, o que significa que ele será executado como um processo em segundo plano sem assumir o controle do seu terminal.

Iniciar/Parar PostgreSQL sem Homebrew


Caso você não tenha (ou não queira usar) o Homebrew for Postgres, mas já tenha o Postgres instalado, você também pode iniciá-lo manualmente com pg_ctl , que é o utilitário de inicialização fornecido pelo próprio Postgres.

Isso iniciará o Postgres (assumindo diretórios padrão):
$ pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log start

E isso vai parar o Postgres:
pg_ctl -D /usr/local/var/postgres stop -s -m fast

Solução de problemas de inicialização:você executou o initdb ?


Em alguns casos, se você tiver problemas para executar o Postgres, certifique-se de ter executado o initdb comando uma vez, o que faz com que o Postgres inicialize o cluster de banco de dados para uma nova instalação e permite que você se conecte com o padrão postgres do utilizador.