Hinweise zu Datenbanken#
Dieses Kapitel beschreibt, wie eine leere Datenbank für Allegra eingerichtet wird für die offiziell unterstützten Datenbanksysteme.
Unterstützte Datenbanksysteme#
Allegra wurde mit den folgenden Datenbanksystemen getestet:
PostgreSQL: 18.x (empfohlen)
Microsoft SQL Server: 2017, 2019, 2022
MySQL/MariaDB: MySQL 8.4 LTS
Oracle: 19c
Hinweis
Allegra wird mit JDBC-Treibern für MySQL/MariaDB, PostgreSQL und MS SQL Server ausgeliefert.
PostgreSQL#
Allegra benötigt eine eigene PostgreSQL-Datenbank und einen dedizierten Datenbankbenutzer.
Führen Sie die folgenden Befehle direkt in psql als Superuser (z. B. postgres) aus.
1) Benutzerrolle anlegen
CREATE ROLE allegra LOGIN PASSWORD '<SICHERES_PASSWORT>';
2) Datenbank erstellen (UTF-8, Besitzer allegra)
CREATE DATABASE allegra
WITH OWNER = allegra
ENCODING = 'UTF8'
LC_COLLATE = 'C.UTF-8'
LC_CTYPE = 'C.UTF-8'
TEMPLATE = template0;
3) Mit der neuen Datenbank verbinden
\c allegra
4) Schema-/Objektrechte setzen (Pflicht)
GRANT ALL PRIVILEGES ON DATABASE allegra TO allegra;
ALTER SCHEMA public OWNER TO allegra;
GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public TO allegra;
GRANT ALL PRIVILEGES ON ALL SEQUENCES IN SCHEMA public TO allegra;
GRANT ALL PRIVILEGES ON ALL FUNCTIONS IN SCHEMA public TO allegra;
ALTER DEFAULT PRIVILEGES IN SCHEMA public
GRANT ALL PRIVILEGES ON TABLES TO allegra;
ALTER DEFAULT PRIVILEGES IN SCHEMA public
GRANT ALL PRIVILEGES ON SEQUENCES TO allegra;
ALTER DEFAULT PRIVILEGES IN SCHEMA public
GRANT ALL PRIVILEGES ON FUNCTIONS TO allegra;
Bemerkung
Ersetzen Sie <SICHERES_PASSWORT>.
Wenn C.UTF-8 auf Ihrem System nicht existiert, verwenden Sie eine vorhandene UTF-8-Locale (z. B. de_DE.UTF-8 oder en_US.UTF-8).
MS SQL Server#
Allegra unterstützt Microsoft SQL Server über den offiziellen JDBC-Treiber
(com.microsoft.sqlserver.jdbc.SQLServerDriver).
Für die Einrichtung der Datenbank folgen Sie den üblichen Best Practices Ihrer Organisation (z. B. Anlegen eines dedizierten Benutzers, Erstellen einer Datenbank, Zuweisen der entsprechenden Rollen sowie Einrichten von Backups und Monitoring).
MySQL and MariaDB#
Allegra supports MySQL and MariaDB. For database provisioning, follow your organization’s standard SQL best practices (create a dedicated login/user, create a database, assign the appropriate role, configure backups/monitoring).
Oracle#
Um Oracle-Datenbanken zu verwenden, müssen Sie einen kompatiblen JDBC-Treiber bereitstellen.
Kopieren Sie die Treiberdatei in das Verzeichnis <INSTALLATION_DIRECTORY>/lib und starten Sie Allegra anschließend neu.
Datenbankverbindung konfigurieren#
Allegra stellt die Verbindung zu der zuvor erstellten Datenbank über die
Konfiguration in der Datei <INSTALLATION_DIRECTORY>/conf/application.properties her.
Sie können die Datenbankverbindung interaktiv einrichten oder aktualisieren mit:
./allegra.sh setup-db # Datenbankverbindung konfigurieren
# allegra.bat setup-db
Dieser Befehl schreibt die wichtigsten Datenbankeigenschaften in die Konfigurationsdatei.
Beispielkonfiguration:
# Datenbankkonfiguration
allegra.db.adapter = postgresql
allegra.db.driver = org.postgresql.Driver
allegra.db.url = jdbc:postgresql://localhost:5432/allegra
allegra.db.username = allegra
allegra.db.password = secret
Stellen Sie sicher, dass Datenbankname, Benutzername und Passwort den zuvor angelegten Zugangsdaten entsprechen. Der JDBC-Treiber und die Verbindungs-URL müssen zum verwendeten Datenbanktyp passen (PostgreSQL, MySQL, SQL Server, Oracle usw.).
Nach Änderungen an der Konfiguration starten Sie Allegra neu, damit diese wirksam werden.