La página oficial no menciona tal caso. Pero muchos usuarios solo necesitan psql
sin una base de datos local (la tengo en AWS). Brew no tiene psql
.
La página oficial no menciona tal caso. Pero muchos usuarios solo necesitan psql
sin una base de datos local (la tengo en AWS). Brew no tiene psql
.
Respuestas:
También puede usar homebrew para instalar libpq.
brew install libpq
Esto le proporcionaría psql, pg_dump y un montón de otras utilidades de cliente sin instalar Postgres.
Luego agrega el directorio de instalación a su ruta. En mi caso, la ubicación del directorio es:
/usr/local/Cellar/libpq/10.3/bin
brew link --force libpq
pero eso creará un montón de otros enlaces simbólicos que quizás no desee / necesite.
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
para agregar todos los comandos a su ruta de una sola vez, usando un nombre de directorio que no cambia con la versión libpq
que instala.
Homebrew solo tiene la fórmula de Postgres y no tiene ninguna fórmula específica que solo instale la psql
herramienta.
Entonces, la "forma correcta" de obtener la psql
aplicación es instalar la fórmula de Postgres , y verá hacia la parte inferior de la sección de "advertencias" que en realidad no ejecuta la base de datos, solo coloca los archivos en su 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
Ahora puede usar psql
para conectarse a servidores de Postgres remotos y no ejecutará uno local, aunque podría hacerlo si realmente quisiera.
Para verificar que el postgres
demonio local no se esté ejecutando, verifique sus servicios de homebrew instalados:
$ brew services list
Name Status User Plist
mysql stopped
postgresql stopped
Si no tiene Homebrew Services instalado, simplemente
$ brew tap homebrew/services
... y obtendrás esta funcionalidad. Para obtener más información sobre Homebrew Services , lea esta excelente publicación de blog que explica cómo funciona .
brew link
paso. Forzar el enlace con libpq es necesario debido a la declaración keg_only en la fórmula. Dada esta complicación específica , defiendo esta respuesta como la forma "correcta" de hacer lo que pide la pregunta. Sin embargo, reconozco que muchos usuarios seguirán prefiriendo el libpq
enfoque.
libpq 11.2
MacOS y zsh o bash
debajo funciona
libpq
brew install libpq
actualizar PATH
si usa zsh:
echo 'export PATH="/usr/local/opt/libpq/bin:$PATH"' >> ~/.zshrc
source ~/.zshrc
si usa 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
si está usando bash.
Si realmente no necesita postgresql, ni siquiera tiene que alterar su ruta para usar libra, solo enlace libpq
. Los documentos dicen que la única razón por la que no es así es para evitar conflictos con el paquete PostgreSQL.
brew uninstall postgresql
brew install libpq
brew link --force libpq
Encontré todos estos realmente insatisfactorios, especialmente si tiene que admitir varias versiones de postgres. Una solución MUCHO más sencilla es descargar los binarios aquí:
https://www.enterprisedb.com/download-postgresql-binaries
Y simplemente ejecute la versión ejecutable psql
que coincida con la base de datos con la que está trabajando sin ningún paso adicional.
ejemplo:
./path/to/specific/version/bin/psql -c '\x' -c 'SELECT * FROM foo;'
Tu podrías intentar brew install postgresql
Pero esto proporciona una buena GUI para administrar sus bases de datos https://postgresapp.com
brew install postgresql
instalar psql con la propia base de datos :(