Open Source · Backup & Wiederherstellung für MySQL, MariaDB und PostgreSQL

Backups ohne Datenbanksperre. Wiederherstellung auf die Sekunde genau.

DumpCat ist eine einzige Binärdatei mit Weboberfläche. Es plant Backups, komprimiert und verschlüsselt sie, überträgt Kopien zu S3, Google Drive, OneDrive oder per SFTP, prüft sie und holt Ihre Daten zurück, wenn Sie sie brauchen. Läuft unter Linux und Windows, vollständig offline.

MySQL 5.7 · 8.0 · 8.4  /  Percona Server  /  MariaDB 10.x · 11.x  /  PostgreSQL 10+

Point-in-Time-Recovery

Simulation

Jemand hat um 14:37:12 die Tabelle orders gelöscht. Ziehen Sie die Markierung auf einen Wiederherstellungspunkt: DumpCat wählt das neueste Basis-Backup und die Binlog-Dateien, die eingespielt werden müssen. PostgreSQL funktioniert genauso, mit archiviertem WAL.

full · 02:00
DROP TABLE orders · 14:37:12
jetzt
  • Vollbackup (mysqldump)
  • Archiviertes Binlog, höchstens 15 Minuten pro Datei
  • Bei der Wiederherstellung eingespielt
  • Vorfall
Wiederherstellen bis
18/10/2026 14:37:11
Basis-Backup
20261018-020000-fullmysqldump · konsistent um 02:00:03
Binlogs einspielen
mysql-bin.000123 → mysql-bin.00017351 Dateien, jede geprüft, bevor Daten angefasst werden
Vor dem Vorfall: orders ist intakt

Installation

In einer Minute startklar

Unter Linux ein einziger Befehl, unter Windows herunterladen und doppelklicken. Der Installer richtet einen Dienst ein, der mit dem Rechner startet, dazu die Backup-Tools passend zu Ihrer Datenbankversion; die Weboberfläche steckt mit in einer einzigen Datei.

Fügen Sie auf dem Linux-Server diesen Befehl ein und drücken Sie Enter:

bash
curl -fsSL https://dumpcat.cc/install.sh | sudo sh

Er lädt das neueste Release herunter, prüft die Prüfsumme und installiert es als systemd-Dienst nach /opt/dumpcat, zusammen mit rclone, dem MySQL/MariaDB-Client, dem passenden mariabackup oder XtraBackup und mydumper, sofern die Paketquellen es anbieten; --postgres 16 fügt die Client-Tools von PostgreSQL 16 hinzu. Optionen kommen hinter sh -s --: --port 9090, --listen 127.0.0.1, --tls-auto.

Nach der Installation

  1. http://<server-ip>:6369 öffnenLegen Sie das Admin-Konto mit dem einmaligen Setup-Token an, das der Installer ausgibt (erneut anzeigen: dumpcat setup-token).
  2. Datenbankserver hinzufügenTest connection listet fehlende Rechte und die nutzbaren Methoden auf.
  3. Speicher hinzufügenTest schreibt, liest und löscht eine Datei.
  4. Backup-Job anlegenZeitplan, Verschlüsselung, Speicher und Aufbewahrung wählen, dann auf Save & run now klicken.

Port 6369 ergibt MEOW

Tippen Sie 6-3-6-9 auf einer Telefontastatur, und Sie erhalten MEOW, englisch für „miau“. Das ist der Standardport der Weboberfläche.

Backup-Methoden

Das passende Werkzeug für jede Datenbank und jede Größe

Für MySQL und MariaDB steuert DumpCat mysqldump, mydumper und XtraBackup / MariaBackup. Wenn Sie einen Server hinzufügen, zeigt Test connection die Version, das Datadir, die Größe jeder Datenbank und welche Methoden auf diesem Rechner funktionieren.

mysqldumplogischmydumperlogisch, parallelXtraBackup / MariaBackupphysisch, im laufenden Betrieb
Sperrt die Datenbank?Bei InnoDB nicht, dank --single-transactionEine globale Sperre für wenige Millisekunden, um die Threads abzugleichen, danach keineKeine InnoDB-Sperren; ganz am Ende eine sehr kurze Backup-Sperre
Tempo beim Backup1 Thread pro Datenbank, mehrere Datenbanken parallelMehrere Threads, Tabellen in Zeilenblöcke aufgeteiltAm schnellsten: Dateikopie mit mehreren Threads
Tempo beim WiederherstellenAm langsamstenSchnell: parallel, Indizes werden nach dem Laden erstelltSehr schnell: Dateikopie + Prepare
InkrementellNeinNeinJa
Einzelne Datenbank wiederherstellen, umbenennenJaJaNein, nur die ganze Instanz
Ideal fürDatenbanken unter 20–50 GBGroße Datenbanken, einzeln wiederhergestellt100 GB bis mehrere TB, niedrige RTO

PostgreSQL ab Version 10: pg_dump pro Datenbank, wobei Tabellen parallel gesichert und wiederhergestellt werden, auch unter neuem Namen oder auf einem anderen Server; pg_basebackup für den ganzen Cluster über eine Replikationsverbindung, mit kontinuierlicher WAL-Archivierung zur Wiederherstellung auf einen Zeitpunkt, einen Wiederherstellungspunkt oder eine WAL-Position.

Speicher

Ein Job, Kopien an mehreren Orten

Auf die lokale Festplatte schreiben und danach hochladen, oder ohne temporären Speicherplatz direkt in die Cloud streamen. Jeder Speicher behält seine eigene Anzahl an Kopien, zum Beispiel 3 Backups lokal und 30 Tage auf S3.

  • Lokal / NFSAm schnellsten wiederhergestellt; nicht auf der Datadir-Platte ablegen
  • S3AWS, Cloudflare R2, MinIO, Wasabi, DigitalOcean
  • Google DriveOAuth oder ein Dienstkonto
  • OneDriveInklusive SharePoint
  • FTP / FTPSExplizites oder implizites TLS
  • SFTPPasswort oder privater Schlüssel
  • WebDAVNextcloud und Co.
  • Backblaze B2Dazu Azure Blob und Dropbox
  • rcloneÜber 70 weitere Backends

Standardformate, kein Lock-in

<storage>/
  shop-nightly/
    20261018-020000-full/
      manifest.json      # sha256, binlog, GTID
      shop.sql.zst.age
      crm.sql.zst.age
      _users.sql.zst.age # users & grants
    binlog/20261018/
      mysql-bin.000123.zst.age

Der Rechner mit DumpCat ist weg? Installieren Sie DumpCat neu, fügen Sie den Speicher wieder hinzu und klicken Sie auf Import backup catalog: Alle Backups erscheinen wieder in der Liste. Auch ohne DumpCat können Sie mit age, zstd und mysql oder pg_restore wiederherstellen.

Verbindung

Datenbank ohne offenen Port? Wird trotzdem gesichert.

Wenn der Backup-Server die Datenbank nicht direkt erreicht, etwa wegen einer Firewall, NAT oder weil die Datenbank nur auf 127.0.0.1 lauscht, baut stattdessen der Datenbank-Host die Verbindung zu DumpCat auf. Dafür gibt es zwei Wege, und keiner öffnet einen Port auf dem Datenbank-Host. Backups, Wiederherstellungen und Point-in-Time-Recovery funktionieren wie bei einer direkten Verbindung.

Agent HTTPS

DumpCatBackup-ServerBackup & Restoremysqldump · mydumper127.0.0.1:portAgent-EndpunktHTTPS · Web-UI-PortPer HTTPS erreichbarDatenbank-HostKein offener PortMySQL / MariaDBUnverändert · nur 127.0.0.1127.0.0.1:3306dumpcat agentErlaubt: 127.0.0.1:3306Hier wird nichts geöffnetFirewall / NAT← HTTPS · vom Datenbank-Host geöffnet3306 eingehendgesperrt, unnötigDumpCatBackup-ServerBackup & Restoremysqldump · mydumper127.0.0.1:portAgent-EndpunktHTTPS · Web-UI-PortPer HTTPS erreichbarFirewall / NAT↑ HTTPSvom Datenbank-Host geöffnet3306 eingehendgesperrt, unnötigDatenbank-HostKein offener Portdumpcat agentErlaubt: 127.0.0.1:3306127.0.0.1:3306MySQL / MariaDBUnverändert · nur 127.0.0.1Hier wird nichts geöffnet
Der Datenbank-Host öffnet den TunnelDer Datenbankverkehr von DumpCat fließt darin zurück
Der Datenbank-Host braucht
Ausgehendes HTTPS zu DumpCat
Datenbank
Unverändert, auch wenn sie nur auf 127.0.0.1 lauscht
Installation
sudo ./install.sh --agent --server … --key …
Ideal für
Umgebungen, in denen Netzwerk und MySQL-Konfiguration unangetastet bleiben sollen

Integriertes WireGuard UDP · standardmäßig aus

DumpCatBackup-ServerBackup & Restoremysqldump · mydumper127.0.0.1:portWireGuard integriert10.66.0.1 · UDP 51820UDP 51820 offenDatenbank-HostKein offener PortMySQL / MariaDBLauscht auf 10.66.0.210.66.0.2:3306wg-quick@dumpcat10.66.0.2 · keepalive 25 sHier wird nichts geöffnetFirewall / NAT← WireGuard UDP · vom DB-Host geöffnet3306 eingehendgesperrt, unnötigDumpCatBackup-ServerBackup & Restoremysqldump · mydumper127.0.0.1:portWireGuard integriert10.66.0.1 · UDP 51820UDP 51820 offenFirewall / NAT↑ WireGuard UDPvom Datenbank-Host geöffnet3306 eingehendgesperrt, unnötigDatenbank-HostKein offener Portwg-quick@dumpcat10.66.0.2 · keepalive 25 s10.66.0.2:3306MySQL / MariaDBLauscht auf 10.66.0.2Hier wird nichts geöffnet
Der Datenbank-Host öffnet den TunnelDer Datenbankverkehr von DumpCat fließt darin zurück
Der Datenbank-Host braucht
Standard-WireGuard, ausgehend UDP 51820 zu DumpCat
Datenbank
Lauscht auf der VPN-Adresse, der Benutzer erlaubt 10.66.0.1
Installation
Auf der WireGuard-Seite einschalten, dumpcat.conf kopieren, systemctl enable --now wg-quick@dumpcat
Ideal für
Teams, die WireGuard bereits nutzen, oder als Gateway zu einem ganzen Datenbanknetz

Der Datenbank-Host öffnet die Verbindung; die Daten fließen darin in beide Richtungen. Physische Backups (XtraBackup / MariaBackup) funktionieren über einen Agenten, der mit --allow-physical gestartet wurde; über WireGuard muss DumpCat dafür weiterhin auf dem Datenbank-Host installiert sein.

Betrieb

Was Sie sonst selbst skripten müssten

All das ist in DumpCat enthalten und wird in der Weboberfläche eingeschaltet und eingestellt.

Vor dem Upload verschlüsselt
age (ChaCha20-Poly1305 + scrypt) läuft auf Ihrem Server, daher kann der Cloud-Anbieter Ihre Daten nicht lesen.
Integritätsprüfungen
SHA-256 für jede Datei. Die Verifizierung liest erneut, entschlüsselt, entpackt und sucht nach der Zeile Dump completed.
GFS-Aufbewahrung
N Backups, N Tage, jeweils das letzte jedes Tages, jeder Woche und jedes Monats. Inkrementelle Ketten werden nur zusammen mit ihrem Vollbackup gelöscht.
Umsichtige Wiederherstellung
Jede Datei wird probeweise entschlüsselt, bevor irgendeine Datenbank gelöscht wird. Wiederherstellung unter neuen Namen oder auf einen anderen Server und eine andere Version (MySQL 8 ↔ MariaDB, PostgreSQL 15 → 16).
Konten und Rollen
admin, operator, viewer. TOTP-Zwei-Faktor-Authentifizierung, API-Tokens, ein Audit-Log und Sperre nach wiederholt fehlgeschlagenen Anmeldungen.
Benachrichtigungen
E-Mail, Telegram, Slack, Discord und HMAC-signierte Webhooks, bei Fehlern oder bei Erfolg.
Datenbanken hinter einer Firewall
Ein Agent auf dem Datenbank-Host verbindet sich ausgehend per HTTPS mit DumpCat, oder der Host tritt dem integrierten WireGuard bei. Zur Datenbank muss kein Port geöffnet werden.
Selbst-Update
dumpcat update prüft SHA-256, sichert die Konfiguration, wartet laufende Backups ab und rollt bei einem Fehler zurück.

KI-freundlich

KI-freundlich: Ihr KI-Assistent hat die Backups im Blick

DumpCat bringt einen MCP-Server und eine in Markdown geschriebene API-Referenz mit. Claude Code, Claude Desktop und andere KI-Agenten verbinden sich mit einem API-Token, fragen nach fehlgeschlagenen Backups, lesen die Logs und erklären die Ursache; mit einem Token mit Vollzugriff können sie auch Backups, Verifizierungen und Wiederherstellungstests starten.

Integrierter MCP-Server
Der Endpunkt /api/mcp ist Teil von DumpCat, es muss nichts weiter installiert werden: Tools für Übersicht, Warnungen, Jobs, Backups, Logs, Wiederherstellungen, Wiederherstellungstests und Vorschauen der Point-in-Time-Recovery. Clients, die einen lokalen Server über stdio starten, nutzen dumpcat mcp.
Standardmäßig sicher
Neue Tokens dürfen nur lesen. Wiederherstellungen, Löschvorgänge, Zugangsdaten und Einstellungen laufen nie über MCP; Antworten enthalten keine Passwörter, Schlüssel oder Tokens, und alles, was ein Assistent startet, landet im Audit-Log.
Eine API-Referenz in Markdown
/api/docs.md schreibt der Server selbst: Authentifizierung, Konventionen, curl-Beispiele und jede Route mit der nötigen Rolle und dem nötigen Token. Fügen Sie sie in einen KI-Chat ein oder lassen Sie einen Agenten sie lesen und die REST-API aufrufen.
In einer Minute eingerichtet
Die Seite API & MCP in DumpCat erstellt das Token, liefert den Befehl für Claude Code und die Konfiguration für Claude Desktop und andere Clients, und mit der Schaltfläche Test prüfen Sie die Verbindung.

Claude Code verbinden

bash
claude mcp add --transport http dumpcat \
  https://backup.example.com/api/mcp \
  --header "Authorization: Bearer mv_…"

Dann fragen Sie ganz normal: „Welche Backups sind letzte Nacht fehlgeschlagen, und warum?“, „Hat shop-nightly ein Backup, das jünger als 24 Stunden ist?“, „Kann ich orders auf gestern 14:37 wiederherstellen?“

Vergleich

DumpCat im Vergleich mit anderen Tools

Wählen Sie ein Tool, um alle Funktionen nebeneinander zu sehen. Angaben zu anderen Produkten sind auf den vollständigen Vergleichsseiten mit Quelle und Datum belegt.

DumpCatSQLBackupAndFTP
Every feature freeYesNo paid tierPartlyFree: 2 DBs, basic features
Runs on your own serversYesOne binaryYesWindows only
LinuxYesamd64, arm64PartlyRemote full backups only
Hot physical backupsYesXtraBackup, MariaBackupNoNo physical backups
Point-in-time recoveryYesTo the second or a GTIDPartlyChosen-time restore undocumented
EncryptionYesage, before uploadPaid planProfessional edition
Data skips the vendorYesServer to your storageYes
Automatic backup checkYesEvery run, plus drillsPartlyVia scheduled restore jobs

Open Source

Kostenlos, Open Source, und Ihre Daten gehören Ihnen

DumpCat steht unter der Apache-2.0-Lizenz. Kein Konto, kein Lizenzschlüssel, keine kostenpflichtige Edition, die Funktionen zurückhält: Alles auf dieser Seite steckt in dem Build, den Sie herunterladen.

Apache-2.0-Lizenz
Nutzen Sie es privat oder im Unternehmen, ändern Sie es und geben Sie es weiter. Der vollständige Text steht in LICENSE.
Keine Telemetrie
DumpCat sendet keinerlei Nutzungsdaten. Die einzige Verbindung, die es von sich aus aufbaut, ist der tägliche Abruf von latest.json, um neue Versionen anzukündigen, und den können Sie in den Einstellungen abschalten.
Kein Umweg über Dritte
Backups, Datenbankpasswörter und Verschlüsselungsschlüssel gelangen nur von Ihrem Server zu dem Speicher, den Sie wählen.
Signierte Releases
Jedes Update ist mit ed25519 signiert und wird vor der Installation gegen SHA-256 geprüft. Zum Selbstbauen brauchen Sie nur Go.

Aus dem Quellcode bauen

bash
git clone https://github.com/theweakestharrison/DumpCat.git
cd DumpCat
go build -o dumpcat ./cmd/dumpcat

Fehlerberichte, Pull Requests und Übersetzungen sind willkommen, siehe CONTRIBUTING.md. Sicherheitsprobleme melden Sie bitte vertraulich, wie in SECURITY.md beschrieben.

Download

Aktuelle Version