[vz-users] Datenbankportierung und neue Struktur

dies und das 6ecoopen at googlemail.com
So Dez 25 15:21:41 CET 2022


Hallo Micha,

ich habe das gleiche Problem und viel probiert, einen Teil Erfolg hatte ich
mit der Änderung
in dbcopy.yaml für DATA von pk auf copy.

Das Ergebnis war zwar das dbCopy Meldete alle rows übertragen zuhaben beim
Nachschauen aber immer
nur 1000 Einträge in der neuen Zieldatenbank waren egal ob mysql oder
sqlight.
Mit meinem Halbwissen bin ich leider nicht weitergekommen.

Mich würde interessieren wie du die Konvertierung hinbekommen hast ich habe
dazu keine Lösung gefunden.

Mfg

Sven


Am Sa., 24. Dez. 2022 um 13:01 Uhr schrieb Michael Hartmann <
hartmann-micha at web.de>:

> Hallo,
>
>
>
> aktuell läuft eine komplette VZ-Installation auf einem Raspi3 mit µSD. Ich
> möchte DB, Frontend und Middleware auf einen weiteren Raspi4 mit SSD
> auslagern.
>
>
>
> Die DB-Struktur hat sich zwischenzeitig geändert. Die alte, automatisch
> vergebene fortlaufende ID ist entfallen und der primary key ist nun die
> Kombination aus channel_id und timestamp.
>
>
>
> Ich habe als Probelauf die DB auf meinem Test-/Spielsystem auf die neue
> Struktur konvertiert. Das hat funktioniert. Ich kann auf alle Daten
> zugreifen und auch über die API manuell Daten schreiben.
>
>
>
> MariaDB [volkszaehler]> show columns from data;
>
> +------------+------------+------+-----+---------+-------+
>
> | Field      | Type       | Null | Key | Default | Extra |
>
> +------------+------------+------+-----+---------+-------+
>
> | channel_id | int(11)    | NO   | PRI | NULL    |       |
>
> | timestamp  | bigint(20) | NO   | PRI | NULL    |       |
>
> | value      | double     | NO   |     | NULL    |       |
>
> +------------+------------+------+-----+---------+-------+
>
> 3 rows in set (0.028 sec)
>
>
>
>
>
> Nun wollte ich die DB mittel dbcopy in eine SQLite DB sichern um sie auf
> den Raspi4 einzuspielen. Da meckert dbcopy das es keinen simple primary
> key in data findet…
>
>
>
> entities: copying 11 rows (overwrite)
>
> [============================] 100%  < 1 sec/< 1 sec  11 rows
>
>
>
> properties: copying 90 rows (overwrite)
>
> [============================] 100%  < 1 sec/< 1 sec  90 rows
>
>
>
> entities_in_aggregator: copying 0 rows (overwrite)
>
>     0 [->--------------------------] < 1 sec 6.0 MiB
>
>
>
>
>
> In CopyCommand.php line 40:
>
>
>
>   Table data doesn't have a simple primary key
>
>
>
>
>
> Wie bekomme ich dbcopy erklärt das es nun channel_id und timestamp als
> primary key verwenden soll?
>
>
>
> Viele Grüße
>
>
>
> Micha
>
-------------- nächster Teil --------------
Ein Dateianhang mit HTML-Daten wurde abgetrennt...
URL: <http://demo.volkszaehler.org/pipermail/volkszaehler-users/attachments/20221225/526bd592/attachment.html>


Mehr Informationen über die Mailingliste volkszaehler-users