Clone
1
Firebird.de
Patrick Gniza edited this page 2026-08-17 10:48:39 +02:00

Deutsch | English

Firebird

Firebird-Unterstützung wird als paralleles Datenbank-Backend eingeführt.

Dies ist besonders relevant, weil macOS-basierte Romexis-Installationen Firebird verwenden und Firebird einen realistischen Weg für ARM64-Umgebungen darstellt.


Compose-Dienst

Empfohlener Firebird-Dienst:

firebird:
  image: jacobalberty/firebird:3.0
  container_name: romexis-firebird
  environment:
    ISC_PASSWORD: "${FIREBIRD_PASSWORD}"
    FIREBIRD_DATABASE: "romexis.fdb"
  ports:
    - "${FIREBIRD_PORT:-3050}:3050"
  volumes:
    - ${ROMEXIS_DATA_ROOT}/firebird:/firebird/data
  healthcheck:
    test: ["CMD-SHELL", "nc -z localhost 3050 || exit 1"]
    interval: 10s
    timeout: 5s
    retries: 30
    start_period: 20s
  restart: unless-stopped

Den Container nicht so konfigurieren, dass ein zweiter SYSDBA-Benutzer erstellt wird. SYSDBA ist bereits vorhanden.


Romexis-Einstellungen

SERVER_DB=4
FIREBIRD_PORT=3050
FIREBIRD_USER=sysdba
FIREBIRD_PASSWORD=pwr0mex!
FIREBIRD_DB_PATH=/firebird/data/romexis.fdb

ROMEXIS_DB_USER=sysdba
ROMEXIS_DB_PASSWORD=pwr0mex!

Erzeugte JDBC-URL:

jdbc:firebirdsql://firebird:3050//firebird/data/romexis.fdb

Firebird-SQL-Payload

Das Firebird-SQL-Payload wird aus dem macOS-Romexis-Installer extrahiert und gespeichert unter:

/opt/romexis-firebird-db

Wichtige Dateien:

scripts/RX_Create_Database.sql
scripts/RX_Base_10fb_MAC.sql
scripts/rxdb.sh
scripts/rxupd.sh
tools/Romexis_Firebird_Backup.sh
tools/Romexis_Firebird_Restore.sh
templates/romexis_new.fdb

Wichtiger Hinweis zu Werkzeugen

Das Firebird-CLI-Werkzeug sollte Folgendes sein:

isql-fb

nicht das isql von unixODBC.

Wenn diese Ausgabe erscheint:

unixODBC - isql and iusql

wird das falsche Werkzeug verwendet.

Setzen:

export ISQL=isql-fb

oder das Initialisierungsskript standardmäßig Folgendes verwenden lassen:

ISQL="${ISQL:-isql-fb}"

Strategie zur Datenbankerstellung

Wenn der Firebird-Container über Folgendes eine leere Datenbank erstellt:

FIREBIRD_DATABASE: "romexis.fdb"

sollte das Romexis-Firebird-Initialisierungsskript nicht erneut CREATE DATABASE ausführen.

Stattdessen sollte es sich mit der vorhandenen leeren Datenbank verbinden und die Romexis-SQL-Skripte importieren.


Firebird-Initialisierung debuggen

Eine Shell im Romexis-Container öffnen:

docker exec -it romexis-server bash

Initialisierungsprogramm manuell ausführen:

ISQL=isql-fb DB_CREATE_VERBOSE=1 bash -x /opt/init-romexis-firebird-db.sh

Verbindung prüfen:

bash -c ':</dev/tcp/firebird/3050'

Manuell verbinden:

isql-fb -user sysdba -password 'pwr0mex!' firebird/3050:/firebird/data/romexis.fdb