Jaki jest domyślny katalog, w którym PostgreSQL będzie przechowywać wszystkie bazy danych w systemie Linux?
linux
postgresql
gruszczy
źródło
źródło
Odpowiedzi:
„ Katalog, w którym postgresql będzie przechowywać wszystkie bazy danych ” (i konfigurację) nazywa się „katalogiem danych” i odpowiada temu, co PostgreSQL nazywa (trochę myląco) „ klastrem bazy danych ”, co nie jest związane z przetwarzaniem rozproszonym, oznacza po prostu grupę baz danych i powiązanych obiektów zarządzanych przez serwer PostgreSQL.
Lokalizacja katalogu danych zależy od dystrybucji. Jeśli instalujesz ze źródła, wartość domyślna to
/usr/local/pgsql/data
:Poza tym instancja działającego serwera PostgreSQL jest powiązana z jednym klastrem; położenie jego katalogu danych może być przekazane demonowi serwera („ postmaster ” lub „ postgres ”) w
-D
opcji wiersza poleceń lub przezPGDATA
zmienną środowiskową (zwykle w zakresie uruchomionego użytkownika, zazwyczajpostgres
). Zwykle możesz zobaczyć działający serwer za pomocą czegoś takiego:Zauważ, że możliwe jest, choć niezbyt częste, uruchomienie dwóch instancji tego samego serwera PostgreSQL (te same pliki binarne, różne procesy), które obsługują różne „klastry” (katalogi danych). Oczywiście każda instancja nasłuchuje na swoim własnym porcie TCP / IP.
źródło
Przynajmniej domyślnie w Gentoo Linux i Ubuntu 14.04.
Możesz znaleźć
postgresql.conf
i spojrzeć na paramdata_directory
. Jeśli jest skomentowany, katalog bazy danych jest taki sam jak ten katalog pliku konfiguracyjnego.źródło
/var/lib/8.1/postgresql
/var/lib/pgsql/9.3
Połącz się z bazą danych i wykonaj polecenie:
Więcej informacji:
https://www.postgresql.org/docs/current/sql-show.html https://www.postgresql.org/docs/current/runtime-config-file-locations.html
źródło
Domyślnie w Debianie 8.1 i PostgreSQL 9.4 po instalacji za pomocą menedżera pakietów apt-get
tak najwyraźniej
/var/lib/postgresql/9.4/main
.źródło
W Centos 6.5 / PostgreSQL 9.3:
Zmień wartość
"PGDATA=/var/lib/pgsql/data"
na dowolną lokalizację w początkowym pliku skryptu/etc/init.d/postgresql
.Pamiętaj, aby
chmod 700
ichown postgres:postgres
do nowej lokacji, a jesteś szefem.źródło
Polecenie
pg_lsclusters
(przynajmniej pod Linux / Ubuntu) może być użyte do wyświetlenia listy istniejących klastrów, a wraz z nim także katalogu danych:źródło
Myślę, że najlepszą metodą jest
pg_setting
sprawdzenie widoku:Wynik:
źródło
Poniższe zapytanie pomoże znaleźć plik konfiguracyjny postgres.
źródło