NEWS
InfluxDB - Daten weg / Wiederherstellung [gelöst]
-
@naturfreund sagte in InfluxDB - Daten weg / Wiederherstellung:
wie bekomme ich die alten Daten wieder hergestellt
welche alten Daten?
-
In den Grafana Plots fehlen zwischen jeweils 2 Zeiträumen meine Messdaten (sie Screenshots oben).
Die Daten habe ich in den Backitup Sicherungen.
Bekomme ich die da raus und kann diese zum Beispiel über eine CSV Datei wieder in die InfluxDB schreiben?
Komplettes Backup zurück spielen würde nur gehen, wenn ich die aktuelle DB "droppe" und durch das Backup ersetze. Die Daten neuer als die Sicherung gehen somit verloren. Oder? -
@naturfreund sagte in InfluxDB - Daten weg / Wiederherstellung:
In den Grafana Plots fehlen zwischen jeweils 2 Zeiträumen meine Messdaten
ja ich weiß, jedoch verstehe ich nicht
@naturfreund sagte in InfluxDB - Daten weg / Wiederherstellung:
Die Daten habe ich in den Backitup Sicherungen.
wenn die Datenbank nicht erreichbar war, ist dorthin auch nix geschrieben worden, wie soll das dann in einem backup enthalten sein?
@naturfreund sagte in InfluxDB - Daten weg / Wiederherstellung:
wieder in die InfluxDB schreiben
ja, man kann Daten manuell nachtragen
@naturfreund sagte in InfluxDB - Daten weg / Wiederherstellung:
Die Daten neuer als die Sicherung gehen somit verloren. Oder?
ja
-
Für eine InfluxDB 2.x habe ich mal zwei Zeiträume zusammengeführt. Das geht aber nur manuell, nicht mit dem Backitup Adapter.
Dazu machst Du zunächst ein Restore in ein neues Bucket (das *tar.gz muss vorher entpackt werden):
influx restore --new-bucket <NAMENEW> --bucket <NAMEOLD> <PFAD/ZUM/BACKUP> -t <TOKEN>
Danach kopierst Du die Daten (Dabei entstehen keine doppelten Daten, falls sich die Zeiträume überlappen, der "range" kann also großzügig gewählt werden)
influx query 'from(bucket:"<NAMENEW>") |> range(start:-10y) |> filter(fn: (r) => r._measurement == "<NAME_MEASUREMENT>") |> set(key: "_measurement", value: "<NAME_MEASUREMENT>") |> to(bucket: "<NAMEOLD>")'
Bezeichner in spitzen Klammern sind natürlich alle anzupassen.
Mit dem zweiten Befehl kann man so innerhalb eines Buckets auch relativ einfach Daten zwischen Measurements kopieren, hilfreich, wenn man mal Objekte umbenennt.
Danach natürlich noch das "ZWISCHENBUCKET" löschen. Fertig.
-
Die Daten waren ja mal da gewesen. Und von dem Zeitraum habe ich noch ein Backup.
Ja genau, so meinte ich das. Ich dachte das kann ich evlt. auch manuell über InfluxDB Studio machen. Aber scheinbar gibt es dort nur eine Export Funktion für JSON/CSV Dateien. Import geht nur über das CLI.
Danke dir, ich werde mich am Wochenende durch deinen Beitrag arbeiten. Ich weiß schon gleich mal nicht was ein Bucket ist
Ich weiß nicht ob es die gleich Vorgehensweise ist. Habe einen Thread gefunden der sich mit dem selben Problem befasst https://community.influxdata.com/t/altdaten-ubernehmen-aus-csv/26730
Aber so ganz verstanden haben ich es noch nicht. Woher weiß Influx in welches Measurement (Pfad) er die Werte aus der CSV schreiben soll?
By the way:
Ich hab jetzt die Sicherung aufs NAS konfiguriert und gerade einen Probelauf inkl. InfluxDB Sicherung laufen lassen. Bisher keine Einträge im Log. Wenn es gut läuft, dann war die "langsame" Internetverbindung zum Google Drive Schuld. -
@naturfreund sagte in InfluxDB - Daten weg / Wiederherstellung:
Die Daten waren ja mal da gewesen
das bezweifle ich, wenn die DB nen Tag nicht erreichbar war, wo sollen die Daten dann her kommen?
-
@naturfreund sagte in InfluxDB - Daten weg / Wiederherstellung:
Aber so ganz verstanden haben ich es noch nicht. Woher weiß Influx in welches Measurement (Pfad) er die Werte aus der CSV schreiben soll?
Der "Trick" liegt hier:
In diesem exportierten CSV sind alle Metadaten (u.a. das Measurement) enthalten.
Das wäre auch eine Möglichkeit zum Ziel zu kommen, aus meiner Sicht aber noch komplizierter. Und auch hier musst Du zunächst Dein InfluxDB-Backup wiederherstellen.So wie Du Dein Vorwissen beschreibst, .... das wird wohl noch ein längerer Weg. Viel Erfolg! Es lohnt sich aber, das Wissen aufzubauen, wenn man langfristig damit arbeiten möchte.
-
Ich habe den Excelexport der Daten (aus Dezember) noch. Außerdem ein paar Screenshots die ich per WhatsApp mit meinen Nachbarn geteilt habe. Will mich hier aber auch nicht wegen so etwas streiten.
Mich würde viel mehr interessieren warum die verschwinden können.Screenshot vom 18.12.22 (vom Smartphone aus gemacht, deshalb anderes Format):
Screenshot vom 13.01.22 (gleicher Zeitraum, am Laptop):
-
@marc-berg said in InfluxDB - Daten weg / Wiederherstellung:
So wie Du Dein Vorwissen beschreibst, .... das wird wohl noch ein längerer Weg. Viel Erfolg! Es lohnt sich aber, das Wissen aufzubauen, wenn man langfristig damit arbeiten möchte.
Auf jeden Fall
-
@naturfreund sagte in InfluxDB - Daten weg / Wiederherstellung:
Danke dir, ich werde mich am Wochenende durch deinen Beitrag arbeiten. Ich weiß schon gleich mal nicht was ein Bucket ist
die Erklärung ist für
@marc-berg sagte in InfluxDB - Daten weg / Wiederherstellung:
Für eine InfluxDB 2.x
https://forum.iobroker.net/post/927744
nicht für deine 1.8 .. Version
-
@glasfaser Hehe, ich habe im Thread Version 2.x gelesen, aber das war ja DEIN Beitrag.
@Naturfreund Dann vergiss, was ich geschrieben habe, das geht mit der 1er Version nicht.
-
Die Frage hab ich noch nicht gestellt, lag mir aber schon auf der Zunge. Ich arbeite aktuell noch mit 32 Bit BS. Kann ich da überhaupt auf die V2.x hoch?
Meines Wissens nach ist dafür ein 64 Bit BS notwendig.Und dann gleich die Folgefrage: Backup einer alten 1.8.x DB Version kann dann mit einer neuen 2.x zusammengeführt werden?
-
@naturfreund sagte in InfluxDB - Daten weg / Wiederherstellung:
Meines Wissens nach ist dafür ein 64 Bit BS notwendig.
Richtig !
-
@naturfreund sagte in InfluxDB - Daten weg / Wiederherstellung:
Und dann gleich die Folgefrage: Backup einer alten 1.8.x DB Version kann dann mit einer neuen 2.x zusammengeführt werden?
so habe ich es gemacht :
Datenpunkt von alt 1.8 als lp exportieren
Beispiel einer Datenbank : Solaredge
influx_inspect export -database Solaredge -datadir /var/lib/influxdb/data -waldir /var/lib/influxdb/wal -retention autogen -out /mnt/influxv1backup.lp -lponly
influx write --bucket iobroker --file /var/lib/influxdb2/influxv1backup.lp
-
@naturfreund ich möcht auch nicht streiten, aber das ist vom Dezember
nu mal so am Rande@naturfreund sagte in InfluxDB - Daten weg / Wiederherstellung:
Hab gerade nochmal versucht den InfluxDB Backup vom 06.01. wiederzustellen:
und was du da zwischenzeitlich sonst noch probiert hast, keine Ahnung.
ich spreche von deinem Januar Beitrag https://forum.iobroker.net/post/926727
und wenn du nun mal nen ganzen Tagerror: influxdb.0 (13722) Error: connect ECONNREFUSED 127.0.0.1:8086
in Log stehen hast, sind da definitiv keine Daten für den Zeitraum
das was du zeigst ist Grafana,
wenn dann müsstest du dich schon auf die Datenbank aufschalten und die Daten anhand der Zeitstempel vergleichen -
Das Backup ist ja fehl geschlagen, ergo arbeite ich noch auf "Main". Sonst habe ich nichts weiter probiert bezüglich Wiederherstellung.
In Grafana hab ich nur die InfluxDB eingebunden.
Die Daten die mir angezeigt wurden und jetzt weg sind müssen ja zwischenzeitlich irgendwo existiert haben. Vielleicht wurden diese während des gesamten Zeitraums nicht weg geschrieben. Und als der "Cach" voll war, waren se weg. Ich kann hier nur spekulieren, da ich die Architektur dahinter nicht kenne.
Dann wären die in den Backups auch nicht drin.Kann ich die Daten aus den Backups nicht einfach in eine neue Datenbank speichern und die dann erst mal mit Grafana analysieren?
Würde mir vollkommen ausreichen.
Nur erstelle ich gerade ein Tagesgenaue Statistik des Primärenergieverbrauchs unseres Hauses über ein ganzes Jahr. Da tur das schon weh wenn solche Zeiträume fehlen. -
@naturfreund sagte in InfluxDB - Daten weg / Wiederherstellung:
Kann ich die Daten aus den Backups nicht einfach in eine neue Datenbank speichern und die dann erst mal mit Grafana analysieren?
Würde mir vollkommen ausreichen.Beispiel :
influxd restore -portable -db NamederaltenDatenbank -newdb NeuerDatenbankname /tmp/MeinBackup
https://docs.influxdata.com/influxdb/v1.8/administration/backup_and_restore/
-
@naturfreund da du noch influx 1.x verwendest, kannst du zumindest mit InfluxDBStudio arbeiten.
-
Sorry, das geht mir noch zu schnell. Ich würde jetzt gerne eines der folgenden Backups wiederstellen:
pi@raspberrypi:/opt/iobroker/backups $ dir 2022_03_04-15_37_18_backupiobroker.tar.gz influxDB_2023_01_03-02_40_18_backupiobroker.tar.gz influxDB_2023_01_04-02_40_18_backupiobroker.tar.gz influxDB_2023_01_05-02_40_18_backupiobroker.tar.gz influxDB_2023_01_06-02_40_18_backupiobroker.tar.gz influxDB_2023_01_07-02_40_18_backupiobroker.tar.gz influxDB_2023_01_08-02_40_18_backupiobroker.tar.gz influxDB_2023_01_09-02_40_18_backupiobroker.tar.gz influxDB_2023_01_10-02_40_18_backupiobroker.tar.gz influxDB_2023_01_11-02_40_18_backupiobroker.tar.gz influxDB_2023_01_12-02_40_18_backupiobroker.tar.gz
zum Beipsiel:
influxd restore - portable -db influxDB_2023_01_09-02_40_18_backupiobroker.tar.gz - newdb ioBroker_2023_01_09 /tmp/InfluxBackup
Und schon liegt unter /tmp/InfluxBackup die Datenbank? Woher kennt er denn den Pfad der Sicherungsquelle?
-
Wäre auch eine Option.