DEV Community

Cover image for Home Assistant langsam? So rettest du deine SD-Karte & machst das Dashboard wieder schnell
Tim Alex
Tim Alex

Posted on

Home Assistant langsam? So rettest du deine SD-Karte & machst das Dashboard wieder schnell

Kennst du das? Du klickst im Dashboard auf den Verlauf eines Sensors, und das Rädchen dreht sich... und dreht sich. Oder dein nächtliches Backup dauert plötzlich 20 Minuten und ist 3 GB groß.

Das Problem ist fast immer dasselbe: Die Datenbank (Recorder).

Home Assistant speichert standardmäßig alles. Jeden Schaltvorgang, jede Sekunde, jeden Sonnenstand. Das müllt nicht nur die Datenbank zu, sondern tötet auf Dauer deine SD-Karte durch massive Schreibzugriffe (Write Cycles).

In diesem Guide zeige ich dir, wie du deine Datenbank auf Diät setzt und (optional) auf die Profi-Datenbank MariaDB wechselst.

Schritt 1: Den "Recorder" zähmen (Die Diät)

Bevor wir die Technik wechseln, müssen wir den Müll rausbringen. Wir konfigurieren den recorder, um unwichtige Daten gar nicht erst zu speichern.

Öffne deine configuration.yaml und füge (oder bearbeite) den Abschnitt recorder:

YAML
recorder:
  purge_keep_days: 10  # Speichert nur die letzten 10 Tage (Standard)
  commit_interval: 30  # Schreibt nur alle 30s auf die Disk (Schont die SD-Karte!)
  exclude:
    domains:
      - automation # Wir brauchen keinen Verlauf, wann eine Automation ausgelöst hat
      - update     # Updates interessieren uns im Verlauf nicht
      - media_player
    entity_globs:
      - sensor.clock* # Jede Minute ein Eintrag -> Weg damit
      - sensor.date*
      - sensor.time*
      - sensor.weather_* # Wettervorhersagen müllen die DB extrem voll
    entities:
      - sun.sun             # Der Sonnenstand ändert sich sekündlich -> Spam
Enter fullscreen mode Exit fullscreen mode

Was bewirkt das? Besonders commit_interval: 30 ist ein Lebensretter für SD-Karten. Statt jede Sekunde zu schreiben, sammelt HA die Daten im RAM und schreibt sie nur alle 30 Sekunden im Block auf die Karte.

Schritt 2: Hardware-Check (Bevor es knallt)

Wenn dein System schon länger läuft und du eine Standard-SD-Karte nutzt, lebst du auf Zeit. Datenbanken fressen billige SD-Karten zum Frühstück.

Die Lösung:

  1. Upgrade auf SSD: Der Königsweg. Schnell, unkaputtbar. Kingston A400 SSD + USB Adapter

  2. High Endurance SD-Karte: Wenn du beim Pi bleiben willst, nutze zwingend Karten, die für Dashcams gemacht sind. Sie halten 10x länger. SanDisk Max Endurance

Schritt 3: Der Turbo – Wechsel auf MariaDB

Standardmäßig nutzt HA eine einfache Datei-Datenbank (SQLite). Ab ca. 50 Geräten wird diese träge. MariaDB ist eine echte SQL-Server-Lösung, die Anfragen viel schneller verarbeitet.

Achtung: Deine alte Historie (Verlauf) wird bei diesem Schritt meist nicht übernommen. Du startest mit einer frischen, schnellen Datenbank.

Die Installation:

  1. Erstelle ein Voll-Backup unter Einstellungen > System > Backups.

  2. Gehe zu Einstellungen > Add-ons > Add-on Store.

  3. Suche und installiere MariaDB.

  4. Gehe in die Konfiguration des Add-ons, setze ein Passwort (z.B. mein_db_passwort) und starte das Add-on.

  5. Gehe zurück zu deiner configuration.yaml und füge unter recorder die db_url hinzu:

YAML
recorder:
  db_url: mysql://homeassistant:mein_db_passwort@core-mariadb/homeassistant?charset=utf8mb4
  # ... hier folgen die excludes von oben ...
Enter fullscreen mode Exit fullscreen mode
  1. Starte Home Assistant neu.

Wie merke ich den Unterschied?

Gehe nach dem Neustart auf den Verlauf (History). Die Graphen sollten jetzt fast instant laden, statt sekundenlang zu laden. Auch das Logbuch ist deutlich flüssiger.

Fazit

Datenbank-Pflege ist nicht sexy, aber essenziell. Mit dem exclude-Filter und dem commit_interval hast du die Lebensdauer deiner Hardware massiv verlängert.

Mein Rat: Warte nicht, bis die SD-Karte kaputt ist (passiert meistens im Urlaub oder Winter). Investiere die 15€ in eine High Endurance Karte oder SSD. SanDisk Max Endurance oder Kingston A400 SSD + USB Adapter

Top comments (0)