PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

Jak uruchomić serwer PostgreSQL w systemie Mac OS X przez Homebrew?

Zainstaluj PostgreSQL przez Homebrew

Prawdopodobnie większość użytkowników OS X zna Homebrew , ale Homebrew to menedżer pakietów dla OS X, który pozwala z łatwością zainstalować i uruchomić ogromną bibliotekę aplikacji i narzędzi.

Nie przejdziemy przez cały (choć krótki) proces instalacji Homebrew, ale jeśli chcesz zainstalować Homebrew i używać go do zarządzania PostgreSQL, sprawdź polecenie instalacji w oficjalnej dokumentacji. Jeśli nie masz pewności, czy Homebrew jest zainstalowany, wypróbuj which brew polecenie z terminala do weryfikacji.

Po zainstalowaniu Homebrew możesz zainstalować PostgreSQL, wydając w terminalu następujące polecenia:

$ brew update
$ brew doctor
$ brew install postgres

Pierwsze dwie komendy służą do aktualizacji Homebrew i zgłaszania wszelkich potencjalnych problemów (jeśli to konieczne). Następnie oczywiście brew install postgres to jednowierszowe polecenie do instalacji PostgreSQL.

Podczas instalacji powinieneś zobaczyć wiele przydatnych informacji, z których większość powinna zostać skopiowana do użycia w następnych sekcjach.

Korzystanie z LaunchAgent i plist do uruchamiania PostgreSQL przy starcie

W większości przypadków prawdopodobnie będziesz chciał uruchomić PostgreSQL podczas uruchamiania systemu, więc musisz powiedzieć komputerowi, że tego pragniesz.

Najpierw musisz utworzyć katalog dla swoich LaunchAgents do zamieszkania (jeśli katalog jeszcze nie istnieje). LaunchAgents w OS X są proste skrypty używane przez launchd które powodują, że system uruchamia programy lub kod podczas uruchamiania.

Utwórz swojego user -specyficzne LaunchAgents katalog z tym poleceniem, jeśli to konieczne:

$ mkdir -p ~/Library/LaunchAgents

Teraz musisz utworzyć dowiązanie symboliczne ze skryptu, który faktycznie pozwoli Postgresowi na uruchomienie LaunchAgents informator. Dowiązanie symboliczne jest podobne do tworzenia nowej kopii pliku do użycia w innym katalogu, ale ponieważ dowiązanie jest „symboliczne”, jest tylko adresem przekazywania:każde żądanie skierowane do tej lokalizacji dowiązania symbolicznego jest w rzeczywistości „przekazywane dalej” lub przekierowane tam, gdzie prawdziwe plik faktycznie się znajduje.

Link do plist (lista właściwości) wygenerowany przez Homebrew i umieść to nowe dowiązanie symboliczne w LaunchAgents za pomocą tego polecenia:

$ ln -sfv /usr/local/opt/postgresql/*.plist ~/Library/LaunchAgents

Uwaga:upewnij się, że polecenie jest poprawne:powinno być częścią danych wyjściowych instalacji wspomnianych powyżej, gdy Homebrew początkowo instalował Postgres.

Na koniec ładujemy nowy LaunchAgent z dowiązaniem symbolicznym plik za pomocą launchctl load polecenie, które w szczególności informuje komputer o uruchomieniu tego skryptu i uruchomieniu Postgresa po uruchomieniu komputera. Ponownie, dokładne polecenie, które należy wprowadzić dla własnej instalacji, będzie wynikiem instalacji Postgres w Homebrew, ale powinno wyglądać mniej więcej tak:

$ launchctl load ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist

Ręczne uruchamianie PostgreSQL

Aby ręcznie uruchomić Postgresa bez ponownego uruchamiania, powinieneś być w stanie użyć polecenia, które zostało wygenerowane podczas instalacji, na przykład:

$ postgres -D /usr/local/var/postgres

Spowoduje to próbę uruchomienia Postgresa w daemon tryb, co oznacza, że ​​będzie działał jako proces w tle bez przejmowania terminala.

Uruchom/zatrzymaj PostgreSQL bez Homebrew

Jeśli nie masz (lub nie chcesz używać) Homebrew dla Postgresa, ale masz już zainstalowany Postgres, możesz również uruchomić go ręcznie za pomocą pg_ctl , czyli narzędzie do uruchamiania dostarczane przez sam Postgres.

Spowoduje to uruchomienie Postgresa (zakładając domyślne katalogi):

$ pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log start

A to zatrzyma Postgres:

pg_ctl -D /usr/local/var/postgres stop -s -m fast

Rozwiązywanie problemów z uruchamianiem:Czy uruchomiono initdb ?

W niektórych przypadkach, jeśli masz problemy z uruchomieniem Postgresa, upewnij się, że wykonałeś initdb jednorazową komendę, co powoduje, że Postgres zainicjuje klaster bazy danych dla nowej instalacji i umożliwia połączenie z domyślnym postgres użytkownika.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak uzyskać tekst SQL z wyzwalacza zdarzenia Postgres?

  2. Konfigurowanie optymalnego środowiska dla PostgreSQL

  3. PostgreSQL przez tunel SSH

  4. Czy możesz utworzyć indeks w definicji CREATE TABLE?

  5. JPA flush vs commit