Auf den ersten Blick verteilt sich eine Installation von PostgreSQL auf viele verschiedene Ordner. Ein locate postgres
brachte bei mir 762 Zeilen zum Vorschein. Nachdem ich alle nicht relevanten Einträge beseitigt hatte (und das waren viele, weil auch Konfigurationen und Bibliotheken aus RubyGems und Python-Paketen in der Liste landen) blieben noch diese Installationsorte übrig:
(1) /etc/postgresql
(2) /usr/share/postgresql
(3) /var/lib/postgresql
(4) /usr/lib/postgresql
In (1) landen Konfigurationsdateien wie pg_hba.conf
und die postgresql.conf
. In (2) landen die Konfigurationsdateien wie sie sowieso schon in (1) angelegt wurden als Samples, außerdem liegen hier die .sql-Dateien der Extensions, die man-pages der Onlinehilfe des Interpreters und Zeitzonendaten. In (3) ist das Verzeichnis, in der postgresql.conf
als data_directory
angegeben ist und in dem die eigentlichen Datenbanken gespeichert werden. In (4) liegen dann noch die Binaries und Libraries.
Das Verwirrende ist wie mit Logs umgegangen wird: wenn in der postgresql.conf
in (1) die Logs mit
log_destination = 'stderr'
logging_collector = on
log_directory = 'pg_log'
aktiviert werden, wird das Verzeichnis pg_log in (4) erzeugt, und es landen nur die Nachrichten mit dem in der postgresql.conf
festgelegten Loglevel in der Datei. Die Logs des Daemons an sich befinden sich wie gehabt in /var/log/postgresql
.