Benutzer-Werkzeuge

Webseiten-Werkzeuge


software:tools:dbcopy

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
software:tools:dbcopy [2019/12/23 09:05] – [Zieldatenbank erstellen] thhoesoftware:tools:dbcopy [2021/05/06 12:35] (aktuell) – [Restore] Quellen stoppen jau
Zeile 122: Zeile 122:
 Datensätze der Tabelle werden nicht kopiert. Für Aggregationswerte ist es sinnvoller sie aus data neu zu generieren als die redundaten Daten nochmal zu speichern. Möchte man die Tabelle aggregate ebenfalls sichern "skip" in "pk" ändern.\\ Datensätze der Tabelle werden nicht kopiert. Für Aggregationswerte ist es sinnvoller sie aus data neu zu generieren als die redundaten Daten nochmal zu speichern. Möchte man die Tabelle aggregate ebenfalls sichern "skip" in "pk" ändern.\\
 ===== Zieldatenbank erstellen ===== ===== Zieldatenbank erstellen =====
-<code>/var/www/volkszaehler.org/vendor/bin/dbcopy create -c /etc/dbcopy.jaml</code>+<code>/var/www/volkszaehler.org/vendor/bin/dbcopy create -c /etc/dbcopy.yaml</code>
 <note important>Das erzeugen von SQLite-Datenbanken schlug in einer alten Version fehl. Falls es Probleme gibt bitte die neuste Version aus den git holen.</note> <note important>Das erzeugen von SQLite-Datenbanken schlug in einer alten Version fehl. Falls es Probleme gibt bitte die neuste Version aus den git holen.</note>
 ===== Daten kopieren ===== ===== Daten kopieren =====
-<code>/var/www/volkszaehler.org/vendor/bin/dbcopy copy -c /etc/dbcopy.json</code>+<code>/var/www/volkszaehler.org/vendor/bin/dbcopy copy -c /etc/dbcopy.yaml</code>
 Erfolgreiche Kopie: Erfolgreiche Kopie:
 <code>entities: copying 9 rows (overwrite) <code>entities: copying 9 rows (overwrite)
Zeile 143: Zeile 143:
 ==== Cronjob ==== ==== Cronjob ====
 Wenn die manuelle Kopie erfolgreich war kann ein cronjob eingerichtet werden. Z.B. täglich: Wenn die manuelle Kopie erfolgreich war kann ein cronjob eingerichtet werden. Z.B. täglich:
-<code>0 2 * * * /usr/bin/php /var/www/volkszaehler.org/vendor/bin/dbcopy copy -c /etc/dbcopy.json > /dev/null</code>+<code>0 2 * * * /usr/bin/php /var/www/volkszaehler.org/vendor/bin/dbcopy copy -c /etc/dbcopy.yaml > /dev/null</code>
  
 ===== Restore ===== ===== Restore =====
-Um eine Sicherung wiederherzustellen einfach eine Konfiguration anlegen bei der Ziel und Quelle vertauscht sind. Das übrige Vorgehen ist identisch.+Um eine Sicherung wiederherzustellen eine Konfiguration anlegen bei der Ziel und Quelle vertauscht sind. Der User vz hat allerdings nicht genügend Rechte. \\ 
 +Deshalb ''user: vz-admin'' mit ''password: secure'' verwenden. \\ 
 + 
 +Während des Restore dürfen auf keinen Fall neue Daten ankommen, das wird zu doppelte IDs und Abbruch führen. Daher alle Quellen stoppen die direkt oder indirekt auf die Datenbank zugreifen: Vzlogger, Scripte, ESP32, Cronjobs (aggregate), etc.\\ 
 + 
 +Wenn beim Backup die Aggreagtionstabelle ausgelassen wurde sollte diese vor Inbetriebnahme der Cronjobs erstmals neu aufgebaut werden. 
 +<code>php /var/www/volkszaehler.org/bin/aggregate run -m full -l day -l hour -l minute</code> 
 +Das kann bei einer entsprechend großen Datenbank einige Stunden dauern und doppelte Ausführung des Sripts (per cron) würde zu Fehlern führen.
software/tools/dbcopy.txt · Zuletzt geändert: 2021/05/06 12:35 von jau