Copias de seguridad de tus bases de datos con Databasus

Qué es Databasus

Databasus es una aplicación pensada para gestionar backups de bases de datos desde una interfaz web. Antes se conocía como Postgresus, pero con el tiempo ha evolucionado para soportar más motores y ofrecer más opciones.

La idea de la herramienta es muy simple: en lugar de depender de scripts sueltos, tareas cron repartidas por varios servidores o soluciones montadas a mano, Databasus centraliza la configuración de las copias, los horarios, los almacenamientos y las notificaciones en un único sitio.

Qué bases de datos soporta

En el momento de escribir este artículo, estas son las versiones compatibles:

MotorVersiones compatiblesHerramienta
PostgreSQL12, 13, 14, 15, 16, 17 y 18pg_dump
MySQL5.7, 8.0, 8.4 y 9.xmysqldump
MariaDB10.x, 11.x y 12.xmysqldump
MongoDB4.x, 5.x, 6.x, 7.x y 8.xmongodump

Además, según el motor, Databasus permite trabajar con distintos tipos de copia, como backups completos, de esquema o de bases concretas.

Qué puede hacer Databasus

Entre sus funciones principales están:

  • Programar backups automáticos.
  • Cifrar las copias de seguridad.
  • Comprimir los archivos.
  • Configurar políticas de retención.
  • Enviar notificaciones cuando un backup termina bien o falla.
  • Guardar las copias en distintos destinos.
  • Organizar todo por espacios de trabajo.

En cuanto al almacenamiento, Databasus permite usar destinos como almacenamiento local, S3, Google Drive, FTP y otros servicios compatibles. También soporta notificaciones por Slack, Discord, Telegram y otros canales similares.

Y para notificaciones también viene bastante completo, ya que puede integrarse con Slack, Discord, Telegram, correo electrónico y webhooks (por ejemplo Gotify).

Instalación en Unraid

Asegúrate de tener Docker habilitado en Unraid: ve a Ajustes > Docker y actívalo, luego aplica cambios.

Instala el plugin Community Applications (CA) si no lo tienes: Apps > Busca “Community Applications” e instálalo.

Crea una carpeta para appdata, idealmente en cache pool: /mnt/user/appdata/databasus/.

Ve a la pestaña Apps y busca “Databasus” y haz haz clic en Instalar.

Búsqueda e instalación de Databasus en Community Applications

Configura:

  • Repositorio: databasus/databasus:latest
  • Tipo de red: selecciona Bridge o la interfaz que corresponda con tu configuración de red.
  • Web UI Port: 4005 u otro que prefieras
  • App Data:  /mnt/user/appdata/databasus/data

Configuración del contenedor Databasus en Unraid

Contenedor Databasus instalado en Unraid

Aplicados los cambios, inicia el contenedor y accede desde el navegador usando la IP de tu servidor Unraid y el puerto elegido, por ejemplo:

http://192.168.1.50:4005

Primer acceso

La primera vez que abras Databasus tendrás que crear el usuario administrador. Mi consejo aquí es el de siempre: usa una contraseña sólida y guárdala bien.

Creación del usuario administrador en Databasus

Crear un espacio de trabajo

Después del primer inicio de sesión, has de crear un workspace. Esto te servirá para organizar mejor las copias, por ejemplo separando bases de datos PostgreSQL, MariaDB o distintos servicios y servidores.

En mi caso, por ejemplo, he creado uno llamado ebdl y lo utilizo para agrupar todas las bases de datos relacionadas con el blog.

Creación de un workspace en Databasus

Añadir una base de datos

Una vez creado el espacio de trabajo, ya puedes pulsar en Add database para configurar la primera base de datos.

Botón para añadir base de datos en Databasus

Solo tendrás que rellenar los datos de conexión, como host, puerto, usuario, contraseña y nombre de la base de datos, y después usar Test Connection para comprobar que todo responde correctamente.​

Formulario de conexión a base de datos en Databasus

Siempre que puedas, usa un usuario de solo lectura. Es una práctica mucho más segura para este tipo de tareas.

Databasus puede ayudarte a crear ese usuario read-only en algunos casos, pero para hacerlo necesitarás conectarte inicialmente con un usuario que tenga los permisos suficientes. Si no los tiene, verás un error al intentarlo.

Error al crear usuario de solo lectura en Databasus

El usuario utilizado para la conexión ha de tener los suficientes privilegios para poder crear el usuario de solo lectura , de lo contrario tendrás este error

Configurar el backup

Una vez añadida la base de datos, toca decidir cuándo se hará la copia. Aquí ya depende bastante de cada caso, podrás elegir entre intervalos diarios, semanales, mensuales o la periodicidad que mejor te encaje.​

Elegir el almacenamiento

Si es la primera vez que usas Databasus, yo empezaría por almacenamiento local, porque es la forma más rápida de comprobar que todo funciona antes de pasar a S3, Google Drive o cualquier otro destino remoto. Durante el asistente eliges el storage donde se guardarán las copias y puedes validar la configuración con Test Connection antes de continuar.​

Configuración de almacenamiento local en Databasus

Si la prueba va bien, guardas y sigues adelante con el resto de opciones, como retención, cifrado o compresión.

Ajustar retención, cifrado y compresión

Databasus también permite configurar:

  • Cifrado.
  • Compresión.
  • Retención.
  • Otras opciones relacionadas con cómo se generan y conservan las copias.​

Mi recomendación personal sería activar el cifrado si las copias van a salir fuera del servidor, aplicar una retención razonable para no llenar el almacenamiento sin necesidad y revisar de vez en cuando que realmente puedes restaurar esos backups. 

Configuración de retención, cifrado y compresión en Databasus

Configurar notificaciones

Este paso es opcional, pero creo que merece mucho la pena. Las notificaciones te permiten saber si una tarea ha ido bien o si algo ha fallado sin necesidad de entrar a revisar manualmente el panel.​

Puedes usar servicios como Slack, Discord, Telegram, correo electrónico o webhooks.

Configuración de notificaciones en Databasus

Selección del canal de notificaciones en Databasus

Configuración de webhook Gotify en Databasus

Con todo ya configurado, solo queda lanzar una primera copia de seguridad para comprobar que la conexión con la base de datos es correcta, que el destino de almacenamiento responde, que la política de backup hace lo que se espera y que las notificaciones llegan correctamente.

Panel principal de Databasus con el primer backup

No olvides hacer backup del Databasus

Un punto importante es que no solo deberías hacer copia de tus bases de datos, sino también de la propia configuración de Databasus. La documentación del proyecto recomienda respaldar al menos el directorio databasus-data y el archivo secret.key, ya que esa clave es fundamental para poder descifrar backups cifrados.

Bola extra: Restablecer la contraseña administrador

Si alguna vez necesitas cambiar o recuperar la contraseña del administrador, puedes hacerlo ejecutando este comando dentro del contenedor

docker exec -it databasus ./main --new-password=``"TuNuevaPasswordSegura123" --email=``"admin" 

Espero que te haya gustado, pasa un buen día. 🐧

Comentarios en Mastodon

Cargando respuestas…

Responder en Mastodon