Administration/Dienste/PostgreSQL

PostgreSQL
Beschreibung {{{description}}}
Administrator Benutzer:Floh1111
URL db01.ffnw.de
Server Administration/Server/srv11.ffnw.de


PostreSQL

Dies ist die Dokumentation zu unserem PostgreSQL-Server. Der PostgreSQL-Server wird auf db01.ffnw.de betrieben, alle Datenbanken sind von extern erreichbar. Zur Administration empfielt sich https://www.pgadmin.org/.

Als Alternative zu PostgreSQL betreiben wir außerdem einen MySQL-Server.

Referenzen:

Installation

apt-get install postgresql postgresql-contrib postgresql-client autopostgresqlbackup

Erweiterungen

Liste aller installierten Erweiterungen anzeigen:

su postgres
psql
SELECT * FROM pg_extension;

Häufig benötigte Erweiterungen installieren

su postgres
psql
# Statistiken für pgAdmin3
# https://www.postgresql.org/docs/9.5/static/adminpack.html
CREATE EXTENSION adminpack;

Referenzen:

Backup

Auf dem Server läuft autopostgresqlbackup und führt tägliche Backups durch. Diese liegen in /var/lib/autopostgresqlbackup/.

Starten & Stoppen

Logs

  • tail -f /var/log/postgresql/postgresql-9.4-main.log
  • systemctl -u postgresql

Externe Verbindungen erlauben

/etc/postgresql/9.4/main/postgresql.conf

listen_addresses = '*'                  # what IP address(es) to listen on;
                                        # comma-separated list of addresses;
                                        # defaults to 'localhost'; use '*' for all
                                        # (change requires restart)

/etc/postgresql/9.4/main/pg_hba.conf

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
local   all             all                                     peer

# IPv4 local connections:
#host    all             all             127.0.0.1/32            md5
# IPv4 global connections:
#host    all             all             0.0.0.0/0               md5

# IPv6 local connections:
#host    all             all             ::1/128                 md5
#IPv6 global connections:
#host    all             all             ::0/0                  md5

# All IP-Adresses
host    all             all             all                     md5


Neuen Benutzer und Datenbank anlegen

In most cases the following will be enough:

su postgres
# -D The new user will not be allowed to create databases.
# -R The new user will not be allowed to create new roles.
# -S The new user will not be a superuser.
# -P Prompt for password
createuser -DRSP puppetdb
createdb -E UTF8 -O puppetdb puppetdb
exit

For more individual setups use

su postgres
createuser --interactive --pwprompt

References:

PhpPgAdmin

http://phppgadmin.ffnw.de/

Update

Ein Update von einer minor-version auf die nächste muss manuell durchgeführt werden.

 sudo pg_dropcluster --stop NEWVERSION main
 sudo pg_upgradecluster -v NEWVERSION OLDVERSION main

Rederenzen: