DBackup
Datenbank-Integration

Redis-Backups, mit einer Wiederherstellung, die Sie führt.

DBackup erstellt nach Zeitplan einen RDB-Snapshot mit redis-cli --rdb, verschlüsselt ihn mit AES-256-GCM, wenn der Job einen Schlüssel hat, und legt ihn auf dem Speicher Ihrer Wahl ab. Die Wiederherstellungsseite schreibt das Skript, das ihn zurückbringt.

Open Source unter GPL-3.0 · läuft auf Ihrem eigenen Server
cache-redisLäuft
  1. VerbindenDirekt zu redis:6379
  2. Dumpredis-cli --rdb dump.rdb
  3. VerschlüsselnGzip und AES-256-GCM
  4. HochladenHetzner Object Storage
  5. Aufbewahren7 täglich, 4 wöchentlich, 12 monatlich
  6. MeldenDiscord · #backups
Mit einem Verschlüsselungsprofil wird jeder Dump mit AES-256-GCM verschlüsselt, bevor er Ihren Server verlässt.
Getestet mit 6 und 8
Redis 2.8 und neuer
Alle logischen Datenbanken in einer Datei
Ein RDB-Snapshot
Mit TLS und ACL-Benutzern
Direkt oder über SSH (Beta)
Ein Skript für Docker, Linux oder Windows
Geführte Wiederherstellung

So läuft ein Redis-Backup

Vier Schritte, jeder mit einem Werkzeug oder Format, das Sie auch selbst nutzen könnten. DBackup führt sie nach Zeitplan aus und meldet sich, wenn einer scheitert.

  1. 1Dumpredis-cli --rdb fordert vom Server einen Snapshot an, dieselbe Datei, die ein Replikat erhält. Sie enthält jede logische Datenbank.
  2. 2KomprimierenDBackup kann den Snapshot mit Gzip oder Brotli komprimieren, bevor es ihn verschlüsselt.
  3. 3VerschlüsselnAES-256-GCM mit dem Schlüssel eines Verschlüsselungsprofils, für jeden Dump einzeln. Darin bleibt der Dump, was das Werkzeug geschrieben hat.
  4. 4AblegenHochgeladen zu einem oder mehreren der 13 Speicherziele, jedes mit eigener Aufbewahrung, von einer einfachen Anzahl bis täglich, wöchentlich, monatlich und jährlich.

Eine Wiederherstellung, die ihr Skript selbst schreibt

Redis lädt seinen Snapshot beim Start, eine Wiederherstellung heißt also, Redis anzuhalten und die Datei an ihren Platz zu legen. Die Wiederherstellungsseite schreibt dafür ein Skript, passend dazu, wie Ihr Redis läuft.

Lieber von Hand? Der Tab Manual zeigt dieselben Schritte als Befehle.

DockerDocker ComposeLinux-DienstWindows-Dienst
  1. 1Prüft PING, appendonly, dir und dbfilename, bevor es etwas ändert
  2. 2Hält Redis an und behält den alten Snapshot als dump.rdb.before-restore
  3. 3Legt das Backup an seinen Platz und startet Redis wieder
  4. 4Wartet, bis Redis antwortet, und zeigt INFO keyspace

Ein Bash-Skript, unter Windows ein PowerShell-Skript, zum Herunterladen oder Kopieren.

Ein Snapshot, alle Datenbanken

Eine RDB-Datei enthält alle logischen Datenbanken des Servers, ein Backup ist also immer ein Snapshot, egal was der Job ausgewählt hat.

  • Ein Login ist ein Profil aus dem Vault mit Benutzer und Passwort. Für einen Server mit nur requirepass ist der Benutzer default, ab Redis 6. Ein ACL-Benutzer braucht SYNC, PSYNC, PING und INFO.
  • Schalten Sie TLS für einen Server ein, der es verlangt.
  • Sentinel und Cluster werden noch nicht unterstützt. DBackup erstellt den Snapshot des einen Servers, den Sie angeben.
  • TARcache-redis_2026-10-08_03-00-00.tar21 MB
  • { }manifest.json
  • DIRdatabases/
  • DBdump.rdb.gz21 MB
  • { }index
Der Aufbau eines unverschlüsselten Archivs. In einem verschlüsselten tragen die Einträge neutrale Namen.
Jeder Rechner mit Node.js
$ node dbackup-recover.js --extract cache-redis_2026-10-08_03-00-00.tar ./restored databases/dump$ sudo systemctl stop redis-server$ sudo install -o redis -g redis -m 640 ./restored/databases/dump.rdb /var/lib/redis/dump.rdb$ sudo systemctl start redis-server

Zurückholen ohne DBackup

Der Snapshot ist die RDB-Datei, die Redis selbst schreibt. Das Recovery Kit entschlüsselt und entpackt sie, und Redis lädt sie beim nächsten Start.

Das Recovery Kit aus dem Vault besteht aus einem Skript und Ihrem Schlüssel. Es entschlüsselt und entpackt einen Dump und prüft seine SHA-256-Summe, bevor es die Datei schreibt.

Warum wir das so gebaut haben

In fünf Minuten startklar

DBackup ist ein Container. Stellen Sie ihn neben Ihre Datenbank, geben Sie ihm einen Login und legen Sie den ersten Job an.

docker-compose.yml
services:
  dbackup:
    image: skyfay/dbackup:latest
    restart: always
    ports:
      - "3000:3000"
    environment:
      - ENCRYPTION_KEY=${ENCRYPTION_KEY}          # openssl rand -hex 32
      - BETTER_AUTH_SECRET=${BETTER_AUTH_SECRET}  # openssl rand -base64 32
      - BETTER_AUTH_URL=https://localhost:3000
    volumes:
      - ./data:/data

  redis:
    image: redis:8
    command: redis-server --requirepass ${REDIS_PASSWORD}

Fragen zu Redis

Ja. Eine RDB-Datei enthält alle logischen Datenbanken des Servers, und DBackup legt sie als einen Eintrag ab.

Mit appendonly an lädt Redis beim Start die AOF und ignoriert die RDB. Die Anleitung zur Wiederherstellung hat dafür einen eigenen Teil, und ihr Skript hält an, bevor es etwas ändert, solange appendonly an ist.

Noch nicht. DBackup verbindet sich mit dem einen Server, den Sie angeben, und erstellt dessen Snapshot.

Redis 2.8 und neuer, dazu Valkey 7.2 und neuer über einen eigenen Quelltyp. Die Integrationstests laufen gegen Redis 6 und 8.

Ja. Das Recovery Kit holt die dump.rdb heraus, verschlüsselt oder nicht, und entpackt sie, mit nichts als Node.js. Halten Sie Redis an, legen Sie die Datei in seinen Datenordner und starten Sie es wieder.

Ihr erstes Redis-Backup läuft heute Nacht.

Ein Container, eine Compose-Datei und ein Job. Kostenlos und Open Source.