YouTube-Video – Kurztipp: Installation von PostgreSQL auf FreeBSD

Ich dachte mir, ich mache mal ein Video zum Thema: wie installiere ich PostgreSQL auf FreeBSD. Hier ist der Link.

Titelbild PostgreSQL auf FreeBSD installieren
PostgreSQL auf FreeBSD installieren

In dieser Anleitung gehe ich davon aus, dass wir ein frisch installiertes FreeBSD 13 auf dem Rechner haben. Schauen wir uns erst einmal an, welche PostgreSQL-Versionen zur Verfügung stehen:

# pkg search postgresql | grep server

Neben Version 9.6 und 10 bis 13 gibt es bei mir in den Packages die Version 14. Genau diese möchten wir auch installieren:

# pkg install postgresql14-server

Wir bestätigen die Installation des Pakets sowie dessen Abhängigkeiten mit [y] gefolgt von [Enter]. Je nach Internetgeschwindigkeit kann das Herunterladen ein wenig dauern. Bei mir werden, auf einem frischen FreeBSD, 167MB heruntergeladen.

Nach der Installation fügen wir folgende Zeilen in die /etc/rc.conf ein:

postgresql_enable="YES"
postgresql_data="/server/database/postgres"
postgresql_flags="-s"
postgresql_initdb_flags="--encoding=utf-8 --lc-collate=C"

Zeile 1 bedeutet, dass PostgreSQL beim Starten des Betriebssystems automatisch gestartet werden soll und sich auch mit „service“ und „start“ starten lässt (anstelle mit onestart).

Zeile 2 legt fest, wo im Dateisystem die Datenbanken liegen sollen. In meinem Fall lautet der Pfad „/server/database/postgresql“. Den müssen wir aber erst erstellen und ihm die richtigen Rechte zuweisen. Wenn du möchtest, dass deine Daten woanders liegen, musst du den Pfad anpassen:

# mkdir -p /server/database/postgres && chown -R postgres:postgres /server/database/postgres

Zeile 3 beinhaltet einige Flags für den Start von PostgreSQL (-s bedeutet „silent“, es werden nur Fehlermeldungen ausgegeben).

In Zeile 4 wird das Standardencoding auf Unicode 8 gestellt.

Ist das alles erledigt, muss zunächst die Datenbank initialisiert werden:

# service postgresql initdb

Wir möchten jetzt aber von außen z.B. mit unserer eigenen Software oder per pgAdmin4 oder mit anderen Datenbanktools auf die Datenbank zugreifen.

Zuerst müssen wir die Datei „/server/database/postgres/postgresql.conf“ bearbeiten und die Zeile mit „listen_addresses“ auf * setzen (oder auf die IP, auf die PostgreSQL lauschen soll).

Dann müssen wir die Datei „/server/database/postgres/pg_hba.conf“ bearbeiten und unter „IPv4 local connections“ eine Zeile anlegen:

Host all all 192.168.0.0/24 password

Hier liegt allerdings der Hund der Sicherheit begraben. Wir sagen damit, dass alle Hosts in dem Netzwerk 192.168.0.0/24 (ihr müsst eure IP natürlich dementsprechend anpassen) mit allen Benutzern auf alle Datenbanken zugreifen können. Das ist schlecht, deshalb überlegt euch ein vernünftiges Sicherheitskonzept! Darum geht es hier allerdings nicht.

Als nächstes können wir PostgreSQL schon starten:

# service postgresql start

Jetzt legen wir noch einen Benutzer an. Nennen wir ihn „Kalle“ und geben ihm auch als Kennwort „Kalle“. Er soll SuperUser sein und Datenbanken anlegen, aber auch löschen können.

# su – postgres

$ createuser -s -P Kalle

Jetzt könnt ihr euch auf euren PostgreSQL-Server verbinden. Achtet darauf, dass dazu der PostgreSQL-Port (Standard 5432) in eurer Firewall freigeschaltet sein muss.

Hier geht’s zum Video.

Schreibe einen Kommentar