MariaDB Backup Thematik und DB Grösse Sensor

Hallo zusammen,

ich habe eine Frage zur MariaDB. Bin im Home Assistant auf MariaDB geschwenkt. Soweit so gut.
Allerdings mache ich mir Gedanken bezüglich eines Backups wenn möglich automatisiert.
Über das Addon phpMyAdmin kann ich händisch einen Export machen. Hmm mir zuviel Arbeit :slight_smile:

Da MariaDB in einem Docker Container läuft komme ich nur auf der Command Line da ran indem ich
in den Container wechsle. Nun kommt mysqldump ins Spiel.

Mit folgemdes Kommando kann ich mir einen Dump ziehen und könnte es theoretisch automatisieren.
PROBLEM: Dies lauft nur wenn der Protection Mode aus ist.

docker exec addon_core_mariadb /usr/bin/mysqldump -u homeassistant --password=xxxxx homeassistant > /root/config/mariadb_backup_$(date +%F).sql

Nun die Frage.
Wie bekomme ich es hin das dies in einer Automation ausgeführt wird.
Momentan läuft es gegen den Pöller was verständlich ist.
ODER mache ich es zu kompliziert und es gibt eine bessere Lösung dazu.

Ein Backup ist mir schon sehr wichtig. Es wundert mich das ich dazu sehr wenig finde.

Ich hoffe jemand kann mir sachdienliche Hinweise liefern. Wäre super.

Und noch eine Frage:
Die Anzeige der MariaDB Größe kann man ja über einen entsprechenden Sensor sich anzeigen lassen.
Füge ich dies allerdings in die config rein wird mir der Sensor nicht angezeigt.
Mache ich es über die SQL Integration funkt dies.
Mache ich beim anlegen des Sensors was falsch ?

MARIA DB SIZE

  • platform: sql
    db_url: mysql://homeassistant:xxxxxx@core-mariadb/homeassistant?charset=utf8mb4
    queries:
    • name: MariaDB size
      query: ‘SELECT table_schema “database”, Round(Sum(data_length + index_length) / 1024 / 1024, 1) “value” FROM information_schema.tables WHERE table_schema=“homeassistant” GROUP BY table_schema;’
      column: ‘value’
      unit_of_measurement: MB

Vielen Dank schonmal.
VG
Supergrobi

Erstmal herzlich willkommen hier im HA-Forum! :slight_smile:

Hoi Supergrobi

Ich kenne mich zuwenig mit Docker aus, betreibe aber auf der Raspi 4 ein paar Container. So wie ich das Prinzip verstanden habe, läuft auf dem Container das Programm. Wird der Container neu geladen/reinitialisiert/geupdatet, gehen alle Daten im Container verloren. Deswegen werden die wichtigen Daten ausserhalb des Containers gespeichert. Wäre es ein Ansatz diesen Ordner mittels Cornjob zu sichern?

Warum nicht einfach das hernehmen was dafür geeignet ist?

Damit wird zwar auch vom homeassistant und den Addons ein Backup angefertigt, die MariaDB ist auch dabei .-)

Gruss

Echt. :smile: In dem Backup ist die MariaDB auch drin. OK wenn das so ist hat sich meine Frage komplett erledigt. Hatte erwartet das MariaDB da nicht drin ist. Danke für die Info.

natürlich nur, wenn es über die Addons in Homeassistant installiert wurde…

Gruss

Ja habe MariaDB direkt im HA als Addon installiert.

Nachtrag:
Sorry auf dies hätte ich kommen müssen. Einfach mal ins Backup schaun. Oh Mann sorry nochmals und trotzdem Danke fürs Feedback.

:crayon:by HarryP: Zusammenführung Doppelpost.
*@Supergrobi *
Bitte für Nachträge/Korrekturen die “bearbeiten” Funktion (geht 24h) verwenden. Danke!

Um in Intervallen ein Backup des Systems und/oder MariaDB zu erstellen kann man auch das Add-On HA Google Drive Backup installieren. Dann hast du es auch gleich extern gesichert. Es gibt hier auch vielfältige Einstellungen.
https://github.com/sabeechen/hassio-google-drive-backup

Oder aber auf ein vorhandenes NAS oder ein anderes externes Speichergerät:

Hast du nicht geschrieben, das MariaDB in Container läuft? Also nicht über die HA-Addons?

Hi Harryp, das habe ich bei mir schon implementiert. Danke dir.
@ guezli: Nun ja wenn man die MariaDB aus dem Add-On Store nimmt läuft diese in einem Docker Container (oder ich sehe die Welt gerade ziemlich falsch). Nur mit dem entsprechenden Docker Befehl komme ich an die Dateien von der MariaDB (als Beispiel mal)
Mit docker exec -i -t addon_core_mariadb bash machst du dir eine Bash in dem Container auf und dann liegen die MariaDB Dateien unter /data/databases (wenn ich das noch richtig im Kopf habe)

Deine Aussage ist dahingehend missverständlich, dass Docker so verstanden werden konnte, dass du die MariaDB ausserhalb der HA-Installation installiert hat.
Bei mir ist HA in einer VM und MariaDB, InfluxDB und grafana in einem eigenen LXC-Container.
Nicht davon wurde durch ein HA Addon installiert. Darum die Verwirrung.

Viel Erfolg
Claudius

@ryhoruk Ja da hast du Recht. Könnte man mißverstehen. Gelobe Besserung :grinning: und werde in künftigen Beiträgen darauf achten. Hat auch den Vorteil das man mir dann schneller helfen kann. :wink:

Ja, da stimmt, im Kontext war das missverständlich. Es gibt immer Gründe die DB in einem separaten Rechner über Docker laufen zu lassen. :slight_smile:

Jedes auf dem offiziellem Weg installierte Addon läuft für sich in einem eigenen Container.