Hoe psql draaien op Mac OS X?

Ik heb PostgreSQL geïnstalleerd op een computer met Mac OS X met behulp van het Installatieprogramma met één klik . Vervolgens probeer ik toegang te krijgen tot PostgreSQL met het psql commando, maar het lijkt niet beschikbaar te zijn.

Ik krijg dit bericht:

psql -bash: psql: command not found 

Moet ik iets meer installeren? Of hoe kan ik PostgreSQL configureren zodat ik het op mijn computer kan gebruiken?

Antwoord

Lokaliseer het psql-binaire bestand. (Voer in een terminal locate psql | grep /bin uit en noteer het pad. (In mijn geval is het “s /opt/local/lib/postgresql90/bin/, zoals het is geïnstalleerd met MacPorts.)

Bewerk vervolgens het .bash_profile -bestand in uw huis map (bijv. mate -w ~/.bash_profile ervan uitgaande dat je “ve textmate” hebt), en voeg de benodigde regel toe zodat deze in je pad staat, bijv .:

export PATH=/opt/local/lib/postgresql90/bin/:$PATH 

Nadat je het bestand hebt opgeslagen, lees je het bestand (. ~/.bash_profile) of open je een nieuwe terminal, en typ je psql.

Reacties

  • Bedankt, mijn pad naar psql was /Library/PostgreSQL/9.0/bin/psql en ik heb een

    bestand zoals je hebt voorgesteld en het werkt prima.

  • @Jonas: +1 Je opmerking moet echt in een apart antwoord komen en moet het geaccepteerde antwoord zijn, want dit is de standaardlocatie bij het installeren van Postgres op een Mac!
  • Het lokaliseercommando werkte in eerste instantie niet voor mij, ik moest eerst wacht vervolgens tot het find proces is voltooid
  • beter export PATH=/Applications/Postgres.app/Contents/Versions/latest/bin/:$PATH
  • Een andere optie, als je ‘ niet wilt knoeien met je PATH-instellingen, is door simpelweg een symlink toe te voegen aan een bekende locatie, die al op je pad staat. Voor mij zou dat ln -s /Library/PostgreSQL/9.2/bin/psql /usr/local/bin/psql

Antwoord

Verschijnt “zijn de manier “om de client te installeren, als je hombrew wilt gebruiken, is:

$ brew install postgresql

dan psql (de client-opdrachtregel) voor u beschikbaar (het installeert ook een lokale Postgres-server / -database, maar u hoeft die niet te gebruiken als u alleen de client wilt).

Blijkbaar is er ook een “wrapper” naar psql om het “gebruikersvriendelijker” te maken ook beschikbaar via homebrew (brew install pgcli) in geval interessant.

Pgcli is a command line interface for Postgres with auto-completion and syntax highlighting.

Een andere optie is om het libpq homebrew-pakket te installeren, maar je moet het geforceerd koppelen (wat tegenwoordig wordt afgeraden)

 brew link --force libpq 

of voeg het toe aan je PATH (wat wordt aangemoedigd), zie de instructies die homebrew zegt na installatie.

Opmerkingen

  • Blijkbaar is er ‘ s geen manier om psql te gebruiken zonder de hele database-engine te installeren. Ik vond pgcli handiger als je bijvoorbeeld al je services in het docker wilt hebben. Goed gedaan @rogerdpack!

Antwoord

Ik raad sterk aan Postgres.app van het Heroku-team, dat ook door hen wordt ondersteund!

Het heeft een menubalkpictogram en het menu heeft een psql item:

Postgres.app menubalkpictogrammenu

U vindt ook psql hier opgenomen als u dezelfde versie daarvan wilt als de server (pad kan per versie verschillen):

/Applications/Postgres.app/Contents/MacOS/bin 

Als je wilt, kun je dit pad aan je opstartscript toevoegen om psql rechtstreeks uit te voeren:

PATH=/Applications/Postgres.app/Contents/MacOS/bin:$PATH 

CAVEAT! AFAIK, Postgres.app ondersteunt geen verbindingen via Unix-sockets (ik ben niet zeker wat dit is …), en ondersteunt alleen TCP / IP-verbindingen. Dus raak niet in paniek als je daar geen verbinding kunt maken vanuit een aantal andere programmas.

Opmerkingen

  • De nieuwste documentatie postgresapp.com/documentation/cli-tools.html geeft het pad weer als /Applications/Postgres.app/Contents/Versions/latest/bin
  • Eigenlijk blijkt commentaar een beter antwoord te zijn 🙂
  • beter export PATH=/Applications/Postgres.app/Contents/Versions/latest/bin/:$PATH
  • Ik heb gezocht, maar kon ‘ geen verband vinden tussen Heroku team en de app. Kun je delen hoe ze met elkaar verbonden zijn?
  • Antwoord

    Volgens de installatiehandleiding nadat de installatie is voltooid, zouden er snelkoppelingen moeten zijn voor StackBuilder, pgAdmin3 en psql in de toepassingsmap van Postgres:

    Je zult ook extra snelkoppelingen vinden om pgAdmin, de psql-opdrachtregelinterface uit te voeren en om toegang te krijgen tot de PostgreSQL-documentatie.

    Als er zulke snelkoppelingen zijn, controleer dan waar de psql naar wijst.

    Reacties

    • Bedankt, ook dit werkte. Ik had ‘ die documentatie niet gezien, alleen de documentatie over postgresql.org.

    Antwoord

    Installeer just client met brew:

    brew install pgcli 

    en vervolgens linken:

    brew link --force libpq 

    als output yo u krijgt het pad naar psql:

    If you need to have this software first in your PATH instead consider running: echo "export PATH="/usr/local/opt/libpq/bin:$PATH"" >> ~/.zshrc 

    om dit pad opnieuw te vinden:

    brew info libpq 

    Antwoord

    Om de opmerking te markeren: /Applications/Postgres.app/Contents/Versions/latest/bin – de map met psql

    Opmerkingen

    • voeg alstublieft meer uitleg toe, u heeft minder dan de opmerking

    Antwoord

    brew install libpq brew link --force libpq 

    Ik volgde de onderstaande walkthrough en het werkte. https://blog.timescale.com/tutorials/how-to-install-psql-on-mac-ubuntu-debian-windows/

    Geef een reactie

    Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *