[vz-users] Fragen zur Datensicherung

Sirko mail_ist at nurfuerspam.de
Sun Dec 20 20:45:43 CET 2015


Hi,

zunächst tritt der Fehler nur auf, wenn weniger als 20 Zeilen kopiert 
werden. Sobald es 20 sind, ist alles schön. Ich hab mal testweise ein 
paar leere Gruppen erzeugt und plötzlich gab es keine Fehler beim 
Kopieren der Tabelle entities mehr.

Allerdings hab ich jetzt einen zusätzlichen Fehler (Unable to load 
dynamic library, siehe unten), ne Idee, woher der kommen könnte?

pi at raspberrypi ~ $ php /var/www/volkszaehler.org/misc/tools/dbcopy.php 
backup -c /var/www/volkszaehler.org/misc/tools/dbcopy.json -k
PHP Warning:  PHP Startup: Unable to load dynamic library 
'/usr/lib/php5/20131226/mcrypt.so' - libmcrypt.so.4: cannot open shared 
object file: Value too large for defined data type in Unknown on line 0
entities: copying 20 rows (overwrite)
  [============================] 100%    1 sec/1 sec    20 rows

properties: copying 149 rows (overwrite)
  [============================] 100%    1 sec/1 sec    149 rows

entities_in_aggregator: copying 4 rows (overwrite)
  [>---------------------------]   0%    1 sec/1 sec    0 rowsPHP 
Warning:  Division by zero in 
/var/www/volkszaehler.org/vendor/symfony/console/Symfony/Component/Console/Helper/ProgressBar.php 
on line 400
PHP Warning:  Division by zero in 
/var/www/volkszaehler.org/vendor/symfony/console/Symfony/Component/Console/Helper/ProgressBar.php 
on line 401
  [============================] 100%    1 sec/1 sec    4 rowsPHP 
Warning:  Division by zero in 
/var/www/volkszaehler.org/vendor/symfony/console/Symfony/Component/Console/Helper/ProgressBar.php 
on line 400
PHP Warning:  Division by zero in 
/var/www/volkszaehler.org/vendor/symfony/console/Symfony/Component/Console/Helper/ProgressBar.php 
on line 401
  [============================] 100%    1 sec/1 sec    4 rows

data: copying 40 rows (partial copy)
  [============================] 100%    1 sec/1 sec    40 rows

aggregate: skipping
pi at raspberrypi ~ $



Am 18.12.2015 um 09:56 schrieb Andreas Götz:
> Hi Sirko,ä
> Ich seh im dump ld nicht wo der Fehler verursacht wird. Dürfte ich das 
> bei Dir mal live per ssh anschauen?
>
> Danke und Gruß, Andreas
>
> Am 17.12.2015 um 14:30 schrieb Sirko <mail_ist at nurfuerspam.de 
> <mailto:mail_ist at nurfuerspam.de>>:
>
>> Hi Andreas,
>>
>> hat etwas gedauert, aber
>>
>> nach einem git pull scheint es eher noch schlimmer zu sein mit dem 
>> DivisionByZero:
>>
>> pi at raspberrypi ~ $ php 
>> /var/www/volkszaehler.org/misc/tools/dbcopy.php 
>> <http://volkszaehler.org/misc/tools/dbcopy.php> backup -c 
>> /var/www/volkszaehler.org/misc/tools/dbcopy.json 
>> <http://volkszaehler.org/misc/tools/dbcopy.json>
>> entities: copying 14 rows (overwrite)
>>  [>---------------------------]   0%    1 sec/1 sec     0 rowsPHP 
>> Warning:  Division by zero in 
>> /var/www/volkszaehler.org/vendor/symfony/console/Symfony/Component/Console/Helper/ProgressBar.php 
>> <http://volkszaehler.org/vendor/symfony/console/Symfony/Component/Console/Helper/ProgressBar.php> 
>> on line 400
>> PHP Warning:  Division by zero in 
>> /var/www/volkszaehler.org/vendor/symfony/console/Symfony/Component/Console/Helper/ProgressBar.php 
>> <http://volkszaehler.org/vendor/symfony/console/Symfony/Component/Console/Helper/ProgressBar.php> 
>> on line 401
>>  [============================] 100%    1 sec/1 sec    14 rowsPHP 
>> Warning:  Division by zero in 
>> /var/www/volkszaehler.org/vendor/symfony/console/Symfony/Component/Console/Helper/ProgressBar.php 
>> <http://volkszaehler.org/vendor/symfony/console/Symfony/Component/Console/Helper/ProgressBar.php> 
>> on line 400
>> PHP Warning:  Division by zero in 
>> /var/www/volkszaehler.org/vendor/symfony/console/Symfony/Component/Console/Helper/ProgressBar.php 
>> <http://volkszaehler.org/vendor/symfony/console/Symfony/Component/Console/Helper/ProgressBar.php> 
>> on line 401
>>  [============================] 100%    1 sec/1 sec    14 rows
>>
>> properties: copying 119 rows (overwrite)
>>  [============================] 100%    1 sec/1 sec    119 rows
>>
>> entities_in_aggregator: copying 4 rows (overwrite)
>>  [>---------------------------]   0%    1 sec/1 sec    0 rowsPHP 
>> Warning:  Division by zero in 
>> /var/www/volkszaehler.org/vendor/symfony/console/Symfony/Component/Console/Helper/ProgressBar.php 
>> <http://volkszaehler.org/vendor/symfony/console/Symfony/Component/Console/Helper/ProgressBar.php> 
>> on line 400
>> PHP Warning:  Division by zero in 
>> /var/www/volkszaehler.org/vendor/symfony/console/Symfony/Component/Console/Helper/ProgressBar.php 
>> <http://volkszaehler.org/vendor/symfony/console/Symfony/Component/Console/Helper/ProgressBar.php> 
>> on line 401
>>  [============================] 100%    1 sec/1 sec    4 rowsPHP 
>> Warning:  Division by zero in 
>> /var/www/volkszaehler.org/vendor/symfony/console/Symfony/Component/Console/Helper/ProgressBar.php 
>> <http://volkszaehler.org/vendor/symfony/console/Symfony/Component/Console/Helper/ProgressBar.php> 
>> on line 400
>> PHP Warning:  Division by zero in 
>> /var/www/volkszaehler.org/vendor/symfony/console/Symfony/Component/Console/Helper/ProgressBar.php 
>> <http://volkszaehler.org/vendor/symfony/console/Symfony/Component/Console/Helper/ProgressBar.php> 
>> on line 401
>>  [============================] 100%    1 sec/1 sec    4 rows
>>
>> data: copying 56 rows (partial copy)
>>  [============================] 100%    1 sec/1 sec    57 rows
>>
>> aggregate: skipping
>>
>> der -k Parameter scheint zu funktionieren.
>> Grüße
>> Sirko
>>
>>
>> Am 15.11.2015 um 11:41 schrieb Andreas Goetz:
>>> Hallo Sirko,
>>>
>>> 2015-10-29 9:54 GMT+01:00 Sirko <mail_ist at nurfuerspam.de 
>>> <mailto:mail_ist at nurfuerspam.de>>:
>>>
>>>     Hi,
>>>
>>>     ich nutze auch dbcopy, weil soweit ich weiß mit mysqldump keine
>>>     inkrementellen Backups gemacht werden können.
>>>     Allerdings waren die dbcopy-Sicherungen eher unregelmäßig und so
>>>     sind mir ca. 3 Wochen Daten verloren gegangen, als meinem Raspi
>>>     vor 2 Wochen der endgültige SD-Tod ereilt hat.
>>>
>>>     Bei mir läuft einfach auf meinem Desktop-Rechner ein MySQL als
>>>     Ziel-DB. Von dort hab ich dann einen Dump gezogen und im Raspi
>>>     importiert, um die DAten auf einenr neuen SD wiederherzustellen.
>>>
>>>     Als (hoffentlich in Zukunft täglich laufendes) BackupScript hab
>>>     ich einfach die Zeilen:
>>>
>>>     #!/bin/bash
>>>     #
>>>     ##############
>>>     # this script uses dbcopy https://github.com/andig/dbcopy
>>>     # to incrementally backup volkszaehler data to another
>>>     # database
>>>     #
>>>     #
>>>     ##############
>>>
>>>     # test for running mysql-DB
>>>     connection_error=`nc -z -w5 192.168.178.99 3306;echo $?`
>>>     #echo $connection_error
>>>
>>>     if [ $connection_error -gt 0 ]
>>>             then
>>>                     echo "DB is down, exiting"
>>>             else
>>>                     sudo php
>>>     /var/www/volkszaehler.org/misc/tools/dbcopy.php
>>>     <http://volkszaehler.org/misc/tools/dbcopy.php> backup -c
>>>     /var/www/volkszaehler.org/misc/tools/dbcopy.json
>>>     <http://volkszaehler.org/misc/tools/dbcopy.json>
>>>
>>>     fi
>>>
>>>     192.168.178.99 ist dabei die IP meines Desktop-Rechners, die
>>>     /var/www/volkszaehler.org/misc/tools/dbcopy.jsonmuß
>>>     <http://volkszaehler.org/misc/tools/dbcopy.jsonmu%C3%9F>
>>>     natürlich auch richtig konfiguriert werden.
>>>
>>>     Als Rückmeldung an Andreas: was mir immer auffällt (aber keine
>>>     Probleme macht), sind die "Division by zero" Meldungen:
>>>     pi at raspberrypi ~ $ bin/incremental_db_backup.sh
>>>     ...
>>>     entities_in_aggregator: copying 0 rows (overwrite)
>>>         0 [>---------------------------]PHP Warning: Division by
>>>     zero in
>>>     /var/www/volkszaehler.org/vendor/symfony/console/Symfony/Component/Console/Helper/ProgressBar.php
>>>     <http://volkszaehler.org/vendor/symfony/console/Symfony/Component/Console/Helper/ProgressBar.php>
>>>     on line 400
>>>
>>>
>>> Der Fehler sollte jetzt behoben sein, könntest Du das verifizieren?
>>>
>>>
>>>     Allerdings hab ich einen Feature-Request. ...
>>>
>>>     Jetzt zum Feature-Request: ich mußte im dbcopy rumpfuschen,
>>>     damit es mir auf dem Raspi nicht die FKs droppt, weil das
>>>     Erstellen derselben nach dem dbcopy wieder ewig gedauert hätte.
>>>
>>>
>>> Guter Punkt. Im Moment ist das nötig weil nicht in logischen 
>>> Einheiten sondern tabellenweise kopiert wird. Um die Entities zu 
>>> kopieren müssen vorher die Properties stimmen (sonst fehlender 
>>> Foreign Key) und umgekehrt. Das geht nur wenn die FKs weg sind oder 
>>> sich an diesen Tabellen nichts ändert das zu einer FK Violation 
>>> führen würde.
>>>
>>> Per Code kann ich das nicht abfangen.
>>>
>>>     Ich hätte daher gern einen Schalter am dbcopy, mit welchem man
>>>     das Droppen der FKs unterbinden kann. Wäre das möglich, Andreas?
>>>
>>>
>>> Es gibt zwei Möglichkeiten: entweder eine Option die das verhindert 
>>> (einfach genug) oder Du probierst mal ob Dir das droppen nicht 
>>> reicht. Die FKs sind zwar "schön" aber eigentlich nicht notwendig da 
>>> sich VZ um korrekte Integrität kümmert.
>>>
>>>
>>>     Grüße
>>>     Sirko
>>>
>>>
>>> Viele Grüße,
>>> Andreas
>>>
>>>
>>>     Am 29.10.2015 um 08:11 schrieb Andreas Götz:
>>>
>>>         Hi Daniel,
>>>
>>>         Funktioniert dbcopy für Dich? Hab wenig Rückmeldung bekommen...
>>>
>>>         Viele Grüße, Andreas
>>>
>>>
>>>             Am 29.10.2015 um 07:43 schrieb Daniel Lauckner
>>>             <mailing at jahp.de <mailto:mailing at jahp.de>>:
>>>
>>>                 Am Dienstag, 27. Oktober 2015 um 22:37 schrieb Theo:
>>>                 Darf ich fragen welches php Script mysql-backup du
>>>                 verwendest?
>>>
>>>             ~/bin/mysql-backup
>>>             Liegt im aktuellen Image hoffentlich noch an der selben
>>>             Stelle.
>>>
>>>                 Würde nicht ein einfaches per cron job gestartetes Shell
>>>                 script in dem mysqldump ausgeführt wird reichen?
>>>
>>>             Ja.
>>>
>>>                 Oder liegt das
>>>                 daran das ich damit immer nur ein und die selbe
>>>                 Sicherungsdatei
>>>                 erstelle und somit immer nur das letzte Backup zur
>>>                 Verfügung habe?
>>>
>>>             Das php-Script erstellt eine neue Datei mit Datum im Namen.
>>>
>>>             Schönheitsfehler vom mysqldump auf dem Raspi ist halt
>>>             das es die
>>>             Datenbank zu sehr stresst und in Folge der vzlogger aus dem
>>>             Tritt kommt.
>>>
>>>             Deswegen mein Wechsel zu dbcopy.
>>>
>>>                 Ich habe hier
>>>                 https://wiki.ubuntuusers.de/MySQL/Backup [...]
>>>                 etwas gefunden, da wird ganz
>>>                 unten auch ein script vorgestellt mit dem man auch
>>>                 inkrementelle
>>>                 Sicherungen anfertigen kann.
>>>
>>>             Ob bzr eine Alternative ist kann ich leider nicht
>>>             einschätzen.
>>>
>>>
>>>                 Mir geht es darum ob das prinzipiell der richtige
>>>                 Weg ist.
>>>
>>>             Regelmäßige inkrementelle Sicherung und gelegentlicher
>>>             Vollabzug
>>>             der DB ist fast schon das Optimum.
>>>
>>>
>>>             mfg Daniel
>>>
>>>
>>>             ---
>>>             Diese E-Mail wurde von Avast Antivirus-Software auf
>>>             Viren geprüft.
>>>             https://www.avast.com/antivirus
>>>
>>>
>>>
>>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://demo.volkszaehler.org/pipermail/volkszaehler-users/attachments/20151220/1c5ac82a/attachment-0001.html>


More information about the volkszaehler-users mailing list