Datenbanken und XML


Einführung

MariaDB-Datenbanken sind leider nur bedingt portabel, zum Beispiel auf einen anderen Datenträger oder eine neuere Version. Deshalb speichere ich den Inhalt von MariaDB-Datenbanken zusammen mit der Tabellen-Struktur in XML-Dateien.

Dieses Verzeichniss enthält Hilfsmittel, um Daten aus einer Datenbank in eine XML-Datei zu übertragen und umgekehrt. Das Skript dbdump (Quelltext) führt die typischen Aufgaben aus.

Dateien

catalog/src/dbdump/DataInserter.pm (Quelltext)

Perl-Modul Herbaer::DataInserter

catalog/src/dbdump/MysqlAccess.pm (Quelltext)

Perl-Modul Herber::MysqlAccess

catalog/src/dbdump/dbdump.pl (Quelltext)

Erzeugt aus einer MariaDB-Datenbank eine XML-Datei (Dump) catalog/dbdump/DBNAME.xml mit Angaben zur Struktur der Datenbank und deren Inhalt. DBNAME steht für den Namen der Datenbank.

catalog/src/dbdump/dbname.pl (Quelltext)

Liest zu einem Datenbankzugangs-Schlüssel den Namen der zugehörigen Datenbank aus der Geheimnisdatei web/secrets und gibt ihn aus.

catalog/dbdump

Die Dateien in diesem Verzeichnis werden vom Script dbdump (Quelltext) erzeugt.

catalog/dbdump/DBNAME_TIMESTAMP.xml

Aufbau (XML-Namensraum http://herbaer.de/xmlns/20201201/dbdump) und Inhalt (XML-Namensraum http://herbaer.de/xmlns/20201201/dbcontents/DBNAME) der Datenbank DBNAME.

catalog/dbdump/DBNAME_create.sql

Erstellt die Datenbank DBNAME und deren Tabellen.

catalog/dbdump/DBNAME_ht.xslt

Vorlage zur HTML-Ansicht der Dateien catalog/dbdump/DBNAME_TIMESTAMP.xml

catalog/dbdump/DBNAME_insert.pl

Fügt den Datenbank-Inhalt aus einer Datenbank-Dump-Datei catalog/dbdump/DBNAME_TIMESTAMP.xml in eine Datenbank mit der gleichen Struktur ein.

catalog/dbdump/DBNAME.rng

Beschreibt den XML-Namensraum http://herbaer.de/xmlns/20201201/dbcontents/DBNAME für den Inhalt der Datenbank DBNAME.

catalog/dbdump/DBNAME.xml

Symbolischer Verweis auf eine der Dateien catalog/dbdump/DBNAME_TIMESTAMP.xml, meist auf die neueste.

catalog/src/dbdump/dbdump.rng

Beschreibt den XML-Namensraum http://herbaer.de/xmlns/20201201/dbdump.

catalog/src/dbdump/dump_create.xslt

Erzeugt aus einer Datenbank-Dump-Datei catalog/dbdump/DBNAME_TIMESTAMP.xml die Datei catalog/dbdump/DBNAME_create.sql.

catalog/src/dbdump/dump_htinc.xslt

Wird von den Dateien catalog/dbdump/DBNAME_ht.xslt eingebunden.

catalog/src/dbdump/dump_htview.xslt

Erzeugt aus einer Datenbank-Dump-Datei catalog/dbdump/DBNAME_TIMESTAMP.xml die Datei catalog/dbdump/DBNAME_ht.xslt.

catalog/src/dbdump/dump_insert.xslt

Erzeugt aus einer Datenbank-Dump-Datei catalog/dbdump/DBNAME_TIMESTAMP.xml die Datei catalog/dbdump/DBNAME_insert.pl.

catalog/src/dbdump/dump_rng.xslt

Erzeugt aus einer Datenbank-Dump-Datei catalog/dbdump/DBNAME_TIMESTAMP.xml die Datei catalog/dbdump/DBNAME.rng.

catalog/src/dbdump/dump_struct_ht.xslt

HTML-Ansicht der Datenbank-Struktur aus einer Datenbank-Dump-Datei catalog/dbdump/DBNAME_TIMESTAMP.xml.

catalog/src/dbdump/path.xslt

Symbolischer Verweis auf die Datei pool/path.xslt. Diese Datei ist in diesem Zusammenhang enstanden. Der Verweis dient nur zur Dokumentation.

catalog/src/dbdump/test_path.xml ,catalog/src/dbdump/test_path.xslt

Diese beiden Dateien dienen zum Test der Datei pool/path.xslt.

catalog/src/dbdump/dbdump (Quelltext)

Skript, das die Dateien im Verzeichnis catalog/dbdump erstellt.