A página oficial não menciona tal caso. Mas muitos usuários precisam apenas psql
sem um banco de dados local (eu o tenho na AWS). Brew não tem psql
.
A página oficial não menciona tal caso. Mas muitos usuários precisam apenas psql
sem um banco de dados local (eu o tenho na AWS). Brew não tem psql
.
Respostas:
Você também pode usar o homebrew para instalar a libpq.
brew install libpq
Isso lhe daria psql, pg_dump e um monte de outros utilitários de cliente sem instalar o Postgres.
Em seguida, você adiciona o diretório de instalação ao seu caminho. No meu caso, o local do diretório é:
/usr/local/Cellar/libpq/10.3/bin
brew link --force libpq
isso, mas criará um monte de outros links simbólicos que você pode não querer / precisar.
ln -s /usr/local/Cellar/libpq/11.3/bin/psql /usr/local/bin/psql
/ ln -s /usr/local/Cellar/libpq/11.3/bin/pg_dump /usr/local/bin/pg_dump
/ln -s /usr/local/Cellar/libpq/11.3/bin/pg_restore /usr/local/bin/pg_restore
for cmd in psql pg_dump pg_restore; do ln -s ../opt/libpq/bin/$cmd /usr/local/bin/$cmd; done
PATH=/usr/local/opt/libpq/bin:$PATH
adicionar todos os comandos ao seu caminho de uma vez, usando um nome de diretório que não muda com a versão libpq
que você instala.
Homebrew só tem realmente a fórmula do postgres , e não tem nenhuma fórmula específica que apenas instale a psql
ferramenta.
Portanto, a "maneira correta" de obter o psql
aplicativo é instalar a fórmula do postgres , e você verá no final da seção de "advertências" que ele não executa o banco de dados, apenas coloca os arquivos em seu sistema :
$ brew install postgres
==> Downloading https://homebrew.bintray.com/bottles/postgresql-9.6.5.sierra.bottle.tar.gz
######################################################################## 100.0%
==> Pouring postgresql-9.6.5.sierra.bottle.tar.gz
==> /usr/local/Cellar/postgresql/9.6.5/bin/initdb /usr/local/var/postgres
==> Caveats
<snip>
To have launchd start postgresql now and restart at login:
brew services start postgresql
Or, if you don't want/need a background service you can just run:
pg_ctl -D /usr/local/var/postgres start
==> Summary
🍺 /usr/local/Cellar/postgresql/9.6.5: 3,269 files, 36.7MB
Agora você pode usar psql
para se conectar a servidores Postgres remotos, e não estará executando um local, embora você pudesse se realmente quisesse.
Para verificar se o postgres
daemon local não está em execução, verifique seus serviços homebrew instalados:
$ brew services list
Name Status User Plist
mysql stopped
postgresql stopped
Se você não tem o Homebrew Services instalado, apenas
$ brew tap homebrew/services
... e você obterá essa funcionalidade. Para obter mais informações sobre o Homebrew Services , leia esta excelente postagem no blog que explica como funciona .
brew link
etapa. Forçar o link com libpq é necessário devido à declaração keg_only na fórmula. Dada essa complicação específica , defendo essa resposta como sendo a maneira "correta" de fazer o que a pergunta pede. Reconheço que muitos usuários ainda preferem a libpq
abordagem.
libpq 11.2
MacOS & zsh ou bash
abaixo funciona
libpq
brew install libpq
atualizar PATH
se usar zsh:
echo 'export PATH="/usr/local/opt/libpq/bin:$PATH"' >> ~/.zshrc
source ~/.zshrc
se usar bash:
echo 'export PATH="/usr/local/opt/libpq/bin:$PATH"' >> ~/.bash_profile
source ~/.bash_profile
echo 'export PATH="/usr/local/opt/libpq/bin:$PATH"' >> ~/.bash_profile
se você estiver usando o bash.
Se você realmente não precisa do postgresql, nem mesmo precisa alterar seu caminho para usar o libra, basta criar um link libpq
. Os documentos dizem que o único motivo pelo qual não é para evitar conflitos com o pacote PostgreSQL.
brew uninstall postgresql
brew install libpq
brew link --force libpq
Achei tudo isso realmente insatisfatório, especialmente se você tiver que oferecer suporte a várias versões do postgres. Uma solução MUITO mais fácil é baixar os binários aqui:
https://www.enterprisedb.com/download-postgresql-binaries
E simplesmente execute a versão executável psql
que corresponde ao banco de dados com o qual você está trabalhando, sem nenhuma etapa extra.
exemplo:
./path/to/specific/version/bin/psql -c '\x' -c 'SELECT * FROM foo;'
Você poderia tentar brew install postgresql
Mas isso fornece uma interface gráfica agradável para gerenciar seus bancos de dados https://postgresapp.com
brew install postgresql
instale o psql com o próprio banco de dados :(