Das Script $SUPERX_DIR/db/bin/SQL_ENV steuert die Umgebung und ist für den Betrieb der Scripte unverzichtbar. Einige Variablen sind vorbelegt, Beispiele sind auf Kommentar gesetzt. Da die Umgebung von dem System abhängt, muss jeder Anwender die Werte manuell pflegen. Bei einem Update des SuperX-Kernmoduls wird diese Datei nicht überschrieben, lediglich sein SQL_ENV.sam im gleichen Verzeichnis. Von dort müssen relevante Änderungen dann in die "richtige" SQL_ENV manuell übernommen werden. Informix- und Postgres-spezifische Variablen sind in dem Kapitel zur Installation und Konfiguration der Datenbankserver beschrieben.
Folgende Variablen sind auf jeden Fall zubelegen:
Variable | Erläuterung |
---|---|
SUPERX_DIR | Der Installationspfad von SuperX |
DATABASE | Das Datenbanksystem ("POSTGRES" / "INFORMIX") |
DBNAME | Der Name der Datenbank (standardmäßig "superx"). |
SX_CLIENT | Die Clientanwendung (bei Postgres "psql", bei Informix "dbaccess"). Ein client namens "jdbc" ist generisch und dient dem Zugriff auf beliebige DB-Systeme, für die jdbc-Treiber existieren. Der jdbc-Client wurde bisher mit Informix, Postgres und hsqldb getestet – die jdbc-Treiber für Informix und Postgres werden mitgeliefert und dürfen auf keinen Fall durch andere ersetzt werden. |
MAILPROG | Das Mailprogramm unter UNIX, z.B. mutt oder mailx; dies muss sich im PATH des users superx befinden. |
LOGMAIL/ERRORMAIL | Die superx-weite Mailadresse, an die Logdateien von ETL-Scripten geschickt werden. |
JAVA_HOME | Installationspfad der Java-Runtime. Das Unterverzeichnis bin muss in den PATH aufgenommen werden. Standardmäßig wird für Kernmodul 5.0 Java 8 oder besser Java 11 vorausgesetzt. |
JAVA_OPTS | Java-Runtime-Optionen, z.B. RAM JAVA_OPTS="-Xmx200M -Djava.awt.headless=true" |
CATALINA_OPTS | Tomcat-Runtime-Optionen, z.B. RAM JAVA_OPTS="-Xmx400M -Djava.awt.headless=true -DSuperX-DB-PROPERTIES-SET=true" |
DB_PROPERTIES | Der Pfad zur DB_PROPERTIES, standardmäßig $SUPERX_DIR/webserver/tomcat/webapps/superx/WEB-INF/db.properties |
MANDANTID | Mandantennummer (Hochschulnummer) bei mandantenfähigen Installationen |
Die folgenden Umgebungsvariablen sind nur für den JDBC-Client sowie für Postgres relevant: | |
LOGGING_PROPERTIES | Logging-Parameter für den jdbc-Client. Voreingestellt ist "WARNING", mehr Ausgaben erhält man mit "FINE" |
PGHOST | Name des Postgres-Servers (für Postgres unter Windows) |
Die folgenden Umgebungsvariablen werden wahrscheinlich nicht geändert (sollten sie auch nicht): | |
DBDELIMITER | Standardmäßig "^" |
PATH | Der PATH wird erweitert um das Verzeichnis ./:$SUPERX_DIR/db/bin |
JDBC_CLASSPATH | Der Pfad zu den relevanten jdbc-Treibern und Hilfsprogrammen. |
XML_CLASSPATH | Der Pfad zu den XML-Tools (Xalan, Xerces & co). |
FM_DEBUG | Wenn FM_DEBUG = true gesetzt wird, werden bei Freemarker Scripten von DOSQL die *.tmp.sql-Dateien nicht gelöscht. |
Die Datei sollte unter UNIX in jedem Aufruf der shell "gesourced" werden, z.B. durch den Befehl:
. ~/db/bin/SQL_ENV
(Leerzeichen zwischen Punkt und Tilde!) in der Datei ~/.bashrc.