Datenbank einrichten¶
WorldQual benötigt mehrere MySQL-Datenbanken für Konfiguration, Routing, Eingabedaten und Ergebnisse.
Datenbank-Übersicht¶
| Datenbank | Zweck |
|---|---|
wq_general |
Zentrale Konfiguration: Runlist, Szenarien, Parameter |
worldqual_{kontinent} |
Kontinentspezifisch: Routing, Fließgeschwindigkeiten, Einträge |
wq_out_{kontinent} |
Ausgabe: Berechnete Konzentrationen |
watergap_unf |
WaterGAP-Basisdaten: Grid-Indizes, Zuflüsse, Einzugsgebiete |
wq_load_{kontinent} |
Berechnete Nährstoffeinträge (Output von wq_load) |
Kontinentkürzel: af (Afrika), as (Asien), au (Australien), eu (Europa), na (Nordamerika), sa (Südamerika)
Schema importieren¶
Das mitgelieferte SQL-Skript erstellt alle Datenbanken und Tabellen:
Alternativ können die kontinentspezifischen Datenbanken mit einer Stored Procedure erstellt werden:
Benutzer und Rechte¶
CREATE USER 'worldqual_user'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON wq_general.* TO 'worldqual_user'@'localhost';
GRANT ALL PRIVILEGES ON `worldqual_%`.* TO 'worldqual_user'@'localhost';
GRANT ALL PRIVILEGES ON `wq_out_%`.* TO 'worldqual_user'@'localhost';
GRANT ALL PRIVILEGES ON `wq_load_%`.* TO 'worldqual_user'@'localhost';
GRANT ALL PRIVILEGES ON watergap_unf.* TO 'worldqual_user'@'localhost';
FLUSH PRIVILEGES;
Die Zugangsdaten werden in der jeweiligen OPTIONS.DAT unter MyHost, MyUser und MyPassword hinterlegt.¶
Wichtige Tabellen¶
wq_general¶
| Tabelle | Inhalt |
|---|---|
_runlist |
Simulationsläufe: IDrun, Szenario, Parameter, Zeitraum |
_szenario |
Szenario-Definitionen |
_parameter |
Verfügbare Wasserqualitätsparameter (N, P, BOD, etc.) |
worldqual_{kontinent}¶
| Tabelle | Inhalt |
|---|---|
routing |
Fluss-Routing: Zelle, Zuflussanzahl, Routing-Status |
flow_velocity |
Fließgeschwindigkeiten, Flusslängen, Routing-Reihenfolge |
load |
Nährstoffeinträge pro Zelle, Szenario und Zeitschritt |
watergap_unf¶
| Tabelle | Inhalt |
|---|---|
gr, gc |
Grid-Zeilen und -Spalten-Indizes |
g_inflc_arc_id |
Zufluss-Informationen (8 Nachbarzellen) |
mother_{kontinent} |
Einzugsgebiets-Zuordnung |
country_continent |
Länder-Kontinent-Mapping |
Das vollständige Schema ist in Datenbank-Schema dokumentiert.
Nächster Schritt: Kompilierung — Module kompilieren und Build-Prozess.