Código abierto · Copias de seguridad y restauración para MySQL, MariaDB y PostgreSQL

Copias de seguridad sin bloquear la base de datos. Recuperación al segundo exacto.

DumpCat es un solo binario con interfaz web. Programa las copias de seguridad, las comprime y las cifra, envía copias a S3, Google Drive, OneDrive o SFTP, las verifica y recupera tus datos cuando los necesitas. Funciona en Linux y Windows, totalmente sin conexión a internet.

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

Recuperación a un punto en el tiempo

Simulación

Alguien eliminó la tabla orders a las 14:37:12. Arrastra el marcador para elegir un punto de recuperación: DumpCat elige la copia base más reciente y los archivos binlog que hay que reaplicar. PostgreSQL funciona igual, con el WAL archivado.

full · 02:00
DROP TABLE orders · 14:37:12
ahora
  • Copia completa (mysqldump)
  • Binlog archivado, como máximo 15 minutos por archivo
  • Se reaplica al restaurar
  • Incidente
Recuperar hasta
18/10/2026 14:37:11
Copia base
20261018-020000-fullmysqldump · consistente a las 02:00:03
Reaplicar binlogs
mysql-bin.000123 → mysql-bin.00017351 archivos, todos verificados antes de tocar ningún dato
Antes del incidente: la tabla orders está intacta

Instalación

Funcionando en un minuto

Un comando en Linux; en Windows, descargar y hacer doble clic. El instalador configura un servicio que arranca con la máquina y las herramientas de copia que corresponden a la versión de tu base de datos; la interfaz web va integrada en un solo archivo.

En el servidor Linux, pega este comando y presiona Enter:

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

Descarga la última versión, comprueba su suma de verificación y la instala en /opt/dumpcat como servicio systemd, con rclone, el cliente de MySQL/MariaDB, el mariabackup o XtraBackup correspondiente y mydumper cuando los repositorios lo incluyen; --postgres 16 agrega las herramientas cliente de PostgreSQL 16. Las opciones van después de sh -s --: --port 9090, --listen 127.0.0.1, --tls-auto.

Después de instalar

  1. Abre http://<server-ip>:6369Crea la cuenta de administrador con el token de configuración de un solo uso que muestra el instalador (para volver a verlo: dumpcat setup-token).
  2. Agrega un servidor de base de datosTest connection enumera los privilegios que faltan y los métodos que puedes usar.
  3. Agrega un almacenamientoTest escribe, lee y borra un archivo.
  4. Crea un trabajo de copiaElige la programación, el cifrado, el almacenamiento y la retención, y luego haz clic en Save & run now.

El puerto 6369 se lee MEOW

Marca 6-3-6-9 en el teclado de un teléfono y obtendrás MEOW, “miau” en inglés. Es el puerto predeterminado de la interfaz web.

Métodos de copia

La herramienta adecuada para cada base de datos y tamaño

Para MySQL y MariaDB, DumpCat utiliza mysqldump, mydumper y XtraBackup / MariaBackup. Al agregar un servidor, Test connection muestra la versión, el datadir, el tamaño de cada base de datos y qué métodos funcionan en esa máquina.

mysqldumplógicomydumperlógico, paraleloXtraBackup / MariaBackupfísico, en caliente
¿Bloquea la base de datos?No en InnoDB, gracias a --single-transactionUn bloqueo global de unos milisegundos para sincronizar los hilos, después ningunoSin bloqueos de InnoDB; un bloqueo de copia muy breve al final
Velocidad de copia1 hilo por base de datos, varias bases de datos en paraleloMultihilo, tablas divididas por filasLa más rápida: copia de archivos multihilo
Velocidad de restauraciónLa más lentaRápida: en paralelo, índices creados tras la cargaMuy rápida: copia de archivos + prepare
IncrementalNoNoSí
Restaurar una sola base de datos, con otro nombreSíSíNo, la instancia completa
Ideal paraBases de datos de menos de 20–50 GBBases de datos grandes que se restauran de una en unaDe 100 GB a varios TB, RTO bajo

PostgreSQL 10 y posteriores: pg_dump por base de datos, con volcado y restauración de tablas en paralelo, con otro nombre o en otro servidor; pg_basebackup para todo el clúster a través de una conexión de replicación, con archivado continuo de WAL para recuperar hasta un momento, un punto de restauración o una posición del WAL.

Almacenamiento

Un trabajo, copias en varios lugares

Guarda en el disco local y luego sube la copia, o envíala directamente a la nube sin disco temporal. Cada almacenamiento conserva su propio número de copias, por ejemplo 3 copias en local y 30 días en S3.

  • Local / NFSLa restauración más rápida; mejor fuera del disco del datadir
  • S3AWS, Cloudflare R2, MinIO, Wasabi, DigitalOcean
  • Google DriveOAuth o una cuenta de servicio
  • OneDriveSharePoint incluido
  • FTP / FTPSTLS explícito o implícito
  • SFTPContraseña o clave privada
  • WebDAVNextcloud y similares
  • Backblaze B2Además de Azure Blob y Dropbox
  • rcloneMás de 70 backends adicionales

Formatos estándar, sin ataduras

<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

¿Se perdió la máquina donde se ejecutaba DumpCat? Instala DumpCat de nuevo, vuelve a agregar el almacenamiento y haz clic en Import backup catalog: todas las copias vuelven a aparecer. Sin DumpCat también puedes restaurar con age, zstd y mysql o pg_restore.

Conectividad

¿Base de datos sin puertos abiertos? También tiene copia de seguridad.

Cuando el servidor de copias de seguridad no puede conectarse directamente a la base de datos, por un firewall, NAT o una base de datos que solo escucha en 127.0.0.1, deja que sea el servidor de base de datos el que se conecte a DumpCat. Hay dos maneras, y ninguna abre un puerto en el servidor de base de datos. Las copias de seguridad, las restauraciones y la recuperación a un punto en el tiempo funcionan igual que con una conexión directa.

Agente HTTPS

DumpCatServidor de copiasCopia y restauraciónmysqldump · mydumper127.0.0.1:portEndpoint del agenteHTTPS · puerto webAccesible por HTTPSServidor de BDSin puerto entranteMySQL / MariaDBSin tocar · solo 127.0.0.1127.0.0.1:3306dumpcat agentPermite 127.0.0.1:3306Nada abierto en este servidorFirewall / NAT← HTTPS · la abre el servidor de BD3306 entrantecerrado, innecesarioDumpCatServidor de copiasCopia y restauraciónmysqldump · mydumper127.0.0.1:portEndpoint del agenteHTTPS · puerto webAccesible por HTTPSFirewall / NAT↑ HTTPSla abre el servidor de BD3306 entrantecerrado, innecesarioServidor de BDSin puerto entrantedumpcat agentPermite 127.0.0.1:3306127.0.0.1:3306MySQL / MariaDBSin tocar · solo 127.0.0.1Nada abierto en este servidor
El servidor de base de datos abre el túnelEl tráfico de DumpCat hacia la base de datos vuelve por dentro
El servidor de base de datos necesita
HTTPS saliente hacia DumpCat
Base de datos
Sin cambios, aunque solo escuche en 127.0.0.1
Instalación
sudo ./install.sh --agent --server … --key …
Ideal para
No tocar la red ni la configuración de MySQL

WireGuard integrado UDP · desactivado por defecto

DumpCatServidor de copiasCopia y restauraciónmysqldump · mydumper127.0.0.1:portWireGuard integrado10.66.0.1 · UDP 51820UDP 51820 abiertoServidor de BDSin puerto entranteMySQL / MariaDBEscucha en 10.66.0.210.66.0.2:3306wg-quick@dumpcat10.66.0.2 · keepalive 25 sNada abierto en este servidorFirewall / NAT← WireGuard UDP · lo abre el servidor de BD3306 entrantecerrado, innecesarioDumpCatServidor de copiasCopia y restauraciónmysqldump · mydumper127.0.0.1:portWireGuard integrado10.66.0.1 · UDP 51820UDP 51820 abiertoFirewall / NAT↑ WireGuard UDPlo abre el servidor de BD3306 entrantecerrado, innecesarioServidor de BDSin puerto entrantewg-quick@dumpcat10.66.0.2 · keepalive 25 s10.66.0.2:3306MySQL / MariaDBEscucha en 10.66.0.2Nada abierto en este servidor
El servidor de base de datos abre el túnelEl tráfico de DumpCat hacia la base de datos vuelve por dentro
El servidor de base de datos necesita
WireGuard estándar, UDP 51820 saliente hacia DumpCat
Base de datos
Escucha en la dirección de la VPN y el usuario acepta conexiones desde 10.66.0.1
Instalación
Actívalo en la página de WireGuard, copia dumpcat.conf, systemctl enable --now wg-quick@dumpcat
Ideal para
Equipos que ya usan WireGuard, o como puerta de enlace a toda una red de bases de datos

El servidor de base de datos abre la conexión; los datos circulan en ambos sentidos dentro de ella. Las copias físicas (XtraBackup / MariaBackup) funcionan a través de un agente iniciado con --allow-physical; con WireGuard siguen necesitando DumpCat instalado en el servidor de base de datos.

Operaciones

Lo que de otro modo tendrías que programar tú mismo

Todo viene incluido en DumpCat y se activa y ajusta desde la interfaz web.

Cifrado antes de subir
age (ChaCha20-Poly1305 + scrypt) se ejecuta en tu servidor, así que el proveedor de la nube no puede leer tus datos.
Comprobación de integridad
SHA-256 para cada archivo. La verificación vuelve a leer, descifra, descomprime y busca la línea Dump completed.
Retención GFS
Conserva N copias, N días, la última de cada día, semana y mes. Las cadenas incrementales solo se eliminan junto con su copia completa.
Restauraciones cuidadosas
Se comprueba que cada archivo se puede descifrar antes de eliminar cualquier base de datos. Restaura con otros nombres, o en otro servidor y otra versión (MySQL 8 ↔ MariaDB, PostgreSQL 15 → 16).
Cuentas y roles
admin, operator, viewer. Doble factor TOTP, tokens de API, un registro de auditoría y bloqueo tras varios inicios de sesión fallidos.
Notificaciones
Correo electrónico, Telegram, Slack, Discord y webhooks firmados con HMAC, en caso de fallo o de éxito.
Bases de datos tras un firewall
Un agente en el servidor de base de datos se conecta a DumpCat por HTTPS, o el servidor se une al WireGuard integrado. No hace falta abrir ningún puerto hacia la base de datos.
Autoactualización
dumpcat update comprueba el SHA-256, hace una copia de la configuración, espera a que terminen las copias en curso y revierte los cambios si algo falla.

Pensado para IA

Pensado para IA: deja que tu asistente vigile las copias de seguridad

DumpCat incluye un servidor MCP y una referencia de la API escrita en Markdown. Claude Code, Claude Desktop y otros agentes de IA se conectan con un token de API para preguntar qué copias fallaron, leer los registros y explicar por qué; con un token de acceso completo también pueden lanzar copias, verificaciones y simulacros de restauración.

Servidor MCP integrado
El endpoint /api/mcp forma parte de DumpCat, no hay que instalar nada más: herramientas para el resumen general, las alertas, los trabajos, las copias, los registros, las restauraciones, los simulacros y las vistas previas de recuperación a un punto en el tiempo. Los clientes que inician un servidor local por stdio usan dumpcat mcp.
Seguro por defecto
Los tokens nuevos solo pueden consultar. Las restauraciones, los borrados, las credenciales y la configuración nunca pasan por MCP; las respuestas omiten contraseñas, claves y tokens, y todo lo que inicia un asistente queda en el registro de auditoría.
Una referencia de la API en Markdown
/api/docs.md lo genera el propio servidor: autenticación, convenciones, ejemplos con curl y cada ruta con el rol y el token que necesita. Pégalo en un chat de IA o deja que un agente lo lea y llame a la API REST.
Listo en un minuto
La página API & MCP de DumpCat crea el token, te da el comando para Claude Code y la configuración para Claude Desktop y otros clientes, además de un botón Test para comprobar la conexión.

Conecta Claude Code

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

Después pregunta con tus propias palabras: “¿Qué copias fallaron anoche y por qué?”, “¿Tiene shop-nightly una copia de menos de 24 horas?”, “¿Puedo recuperar orders hasta ayer a las 14:37?”

Comparar

DumpCat frente a otras herramientas

Elige una herramienta para ver todas las funciones lado a lado. Los datos sobre otros productos llevan fuente y fecha en las páginas de comparación completas.

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

Código abierto

Gratis, de código abierto, y tus datos siguen siendo tuyos

DumpCat se publica bajo la licencia Apache-2.0. Sin cuentas, sin claves de licencia, sin una edición de pago que se reserve funciones: todo lo que ves en esta página está en la versión que descargas.

Licencia Apache-2.0
Úsalo en casa o en el trabajo, modifícalo y redistribúyelo. El texto completo está en LICENSE.
Sin telemetría
DumpCat no envía datos de uso a ningún sitio. La única llamada que hace por su cuenta es leer latest.json una vez al día para avisar de nuevas versiones, y puedes desactivarla en Settings.
Sin intermediarios
Las copias de seguridad, las contraseñas de las bases de datos y las claves de cifrado solo viajan de tu servidor al almacenamiento que elijas.
Versiones firmadas
Cada actualización se firma con ed25519 y se comprueba con SHA-256 antes de instalarse. Para compilarlo tú mismo solo necesitas Go.

Compilar desde el código fuente

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

Los informes de errores, los pull requests y las traducciones son bienvenidos; consulta CONTRIBUTING.md. Informa de los problemas de seguridad en privado, como se explica en SECURITY.md.

Descarga

Última versión