Jak uruchomić psql na Mac OS X?

Zainstalowałem PostgreSQL na komputerze z Mac OS X przy użyciu Instalatora jednym kliknięciem . Następnie próbuję uzyskać dostęp do PostgreSQL za pomocą polecenia psql, ale wygląda na to, że nie jest dostępne.

Otrzymuję następujący komunikat:

psql -bash: psql: command not found 

Czy muszę instalować coś więcej? Albo jak mogę skonfigurować PostgreSQL, aby móc go używać na moim komputerze?

Odpowiedź

Znajdź plik binarny psql. (W terminalu uruchom locate psql | grep /bin i zanotuj ścieżkę). (w moim przypadku „s /opt/local/lib/postgresql90/bin/, ponieważ został zainstalowany przy użyciu MacPorts.)

Następnie edytuj plik .bash_profile w swoim domu folder (np. mate -w ~/.bash_profile zakładając, że jesteś „ve textmate) i dodaj potrzebną linię, aby znalazła się na Twojej ścieżce, np .:

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

Po zapisaniu pliku przeczytaj go (. ~/.bash_profile) lub otwórz nowy terminal i wpisz psql.

Komentarze

  • Dzięki, moja ścieżka do psql to /Library/PostgreSQL/9.0/bin/psql i utworzyłem

    tak jak zasugerowałeś i działa świetnie.

  • @Jonas: +1 Twój komentarz powinien naprawdę znaleźć się w osobnej odpowiedzi i powinien być odpowiedzią zaakceptowaną, ponieważ tak jest domyślna lokalizacja podczas instalowania Postgres na komputerze Mac!
  • Polecenie lokalizacji nie ' nie działało początkowo dla mnie, najpierw musiałem uruchomić sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.locate.plist następnie poczekaj na zakończenie procesu find
  • lepiej export PATH=/Applications/Postgres.app/Contents/Versions/latest/bin/:$PATH
  • Inną opcją, jeśli nie ' nie chcesz zepsuć ustawień PATH, jest po prostu dodanie linku symbolicznego do dobrze znanej lokalizacji, która jest już na Twojej ścieżce. Dla mnie byłaby to ln -s /Library/PostgreSQL/9.2/bin/psql /usr/local/bin/psql

Odpowiedź

Pojawia się ” sposób „instalacji klienta, jeśli chcesz używać hombrew, to:

$ brew install postgresql

następnie psql ( klient) będzie teraz dostępny (instaluje również lokalny serwer / bazę danych Postgres, ale nie musisz tego używać, jeśli chcesz tylko klienta).

Najwyraźniej jest tam także „opakowanie” dla psql, aby uczynić go bardziej „przyjaznym dla użytkownika”, dostępne również przez homebrew (brew install pgcli) w sprawa ciekawa.

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

Inną opcją jest zainstalowanie pakietu libpq homebrew, ale musisz wymusić link (co jest obecnie odradzane)

 brew link --force libpq 

lub dodaj go do swojej PATH (co jest zalecane), zobacz wskazówki, które homebrew mówi po instalacji.

Komentarze

  • Najwyraźniej ' nie ma możliwości używania psql bez instalowania całego silnika bazy danych. Uważam, że pgcli jest wygodniejsze, gdy na przykład chcesz zadokować wszystkie usługi. Tak trzymaj @rogerdpack!

Odpowiedz

Zdecydowanie polecam używanie Postgres.app z zespołu Heroku, który również jest przez nich obsługiwany!

Ma ikonę paska menu, a menu ma psql pozycja:

menu ikony paska menu Postgres.app

Znajdziesz również psql dołączone tutaj, jeśli chcesz mieć tę samą wersję co serwer (ścieżka może się różnić w zależności od wersji):

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

Jeśli chcesz, możesz dodać tę ścieżkę do swojego skryptu startowego, aby wykonać psql bezpośrednio:

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

OSTRZEŻENIE! AFAIK, Postgres.app nie obsługuje połączeń przez gniazda Unix (nie jestem jasne, co to jest …) i obsługuje tylko połączenia TCP / IP. Nie panikuj więc, jeśli nie uda Ci się połączyć z innym programem.

Komentarze

  • Najnowsza dokumentacja postgresapp.com/documentation/cli-tools.html zawiera ścieżkę jako /Applications/Postgres.app/Contents/Versions/latest/bin
  • Właściwie komentarz okazuje się lepszą odpowiedzią 🙂
  • lepiej export PATH=/Applications/Postgres.app/Contents/Versions/latest/bin/:$PATH
  • Szukałem, ale nie mogłem ' znaleźć żadnego związku między Heroku team a aplikacją. Czy możesz powiedzieć, w jaki sposób są połączeni?
  • Odpowiedź

    Zgodnie z instrukcją instalacji po zakończeniu instalacji w folderze aplikacji w Postgres powinny znajdować się skróty do StackBuilder, pgAdmin3 i psql :

    Znajdziesz tam również dodatkowe skróty do uruchomienia pgAdmin, interfejsu wiersza poleceń psql i dostępu do dokumentacji PostgreSQL.

    Jeśli są takie skróty, sprawdź, dokąd wskazuje psql.

    Komentarze

    • Dzięki, to również działało. Nie ' nie widziałem tej dokumentacji, tylko dokumentację dotyczącą postgresql.org.

    Odpowiedź

    Zainstaluj just client z brew:

    brew install pgcli 

    , a następnie połącz go:

    brew link --force libpq 

    jako wyjście yo u uzyskasz ścieżkę do 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 

    , aby ponownie znaleźć tę ścieżkę:

    brew info libpq 

    Odpowiedź

    Aby zaznaczyć komentarz: /Applications/Postgres.app/Contents/Versions/latest/bin – folder psql

    Komentarze

    • proszę dodać więcej wyjaśnień, masz mniej niż komentarz

    Odpowiedź

    brew install libpq brew link --force libpq 

    Postępowałem zgodnie z poniższą instrukcją i to pracował. https://blog.timescale.com/tutorials/how-to-install-psql-on-mac-ubuntu-debian-windows/

    Dodaj komentarz

    Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *