de:modul:ffit:3-jahr:java:learningunits:lu01:db

Action unknown: linkbutton

LU01d - DB

Damit wir im späteren Verlauf des Semesters Objekte persistieren können, benötigen wir eine Datenbank.

Folgende Datenbankmanagementsysteme (DBMS), beziehungsweise Database Engines sind in der Software-Entwicklung gebräuchlich:

In diesem Modul werden wir PostgreSQL einsetzen. Laden Sie dazu die Version 17 herunter und installieren Sie diese.

Die Installation kann mit folgendem Befehl überprüft werden.

psql --version
PostgreSQL version

Falls psql nicht als Befehl gefunden wird, überprüfen Sie, ob der Ordner bin der PostgreSQL-Installation der Umgebungsvariable path hinzugefügt ist.

Der Standardbenutzer heisst postgres. Damit könnten Sie bereits einzelne DQL-Statements ausführen.

Für die lokale Entwicklung erlauben wir den lokalen Zugriff ohne Passwort, indem wir die Datei pg_hba.conf entsprechend anpassen.

psql -U postgres -c "SHOW hba_file;"

Nur für lokale Entwicklung, niemals für produktive Datenbanken!

Ändern Sie in der Datei pg_hba.conf folgende Zeilen.

Old: `host    all             all             127.0.0.1/32            scram-sha-256`
New: `host    all             all             127.0.0.1/32            trust`

Old: `host    all             all             ::1/128                 scram-sha-256`
New: `host    all             all             ::1/128                 trust`

Damit die Änderung wirksam wird, muss der Datenbankserver mit Admin-Rechten neu gestartet werden.

net stop postgresql-x64-17 && net start postgresql-x64-17

Zeigen Sie die aktuellen Benutzer an.

psql -U postgres -c "SELECT * FROM pg_catalog.pg_user;"

Erstellen Sie einen neuen Benutzer mit einem Namen und Passwort Ihrer Wahl.

psql -U postgres -c "CREATE USER localuser WITH LOGIN;"

Dieser Benutzer sollte nun aufgelistet sein.

psql -U postgres -c "SELECT * FROM pg_catalog.pg_user;"

Sie können nun eine Datenbank anlegen und anstatt postgres Ihren eigenen Benutzer als Besitzer definieren. Damit trennen Sie die Serveradministration von der Datenbankadministration.

psql -U postgres -c "CREATE DATABASE localdb OWNER localuser;"

Diese Datenbank ist nun bereit und kann aus einem Backend aufgerufen werden.

  • de/modul/ffit/3-jahr/java/learningunits/lu01/db.txt
  • Zuletzt geändert: 2025/08/20 19:53
  • von apeter