Saltar al contenido
softperu.pe

Generar Copias de Seguridad (Backup) en Docker

Procedimiento para generar un volcado SQL de la base de datos central o de una empresa tenant directamente desde el contenedor de MariaDB en Docker.


💾 Generar Backup desde la Terminal con Docker

  1. Conéctese vía SSH a su servidor.

  2. Obtenga las credenciales de base de datos desde el archivo .env del proyecto (MYSQL_ROOT_PASSWORD, DB_DATABASE).

  3. Ejecute docker ps e identifique el contenedor correspondiente a MariaDB/MySQL (por ejemplo pro9_mariadb_1 o multifacturalo_mariadb2_1).

  4. Ingrese a la consola del contenedor de base de datos:

    docker exec -ti multifacturalo_mariadb2_1 /bin/bash
    
  5. Genere el respaldo con mysqldump:

    mysqldump -v --opt --events --routines --triggers --default-character-set=utf8 -u root -p tenancy_demo > db_backup_tenancy_demo.sql
    
    • Ingrese la contraseña cuando el prompt lo solicite (Enter password:).
    • El archivo db_backup_tenancy_demo.sql se creará dentro del contenedor.
  6. Salga del contenedor escribiendo:

    exit
    
  7. Extraiga el archivo .sql desde el contenedor hacia el sistema de archivos del servidor anfitrión:

    docker cp multifacturalo_mariadb2_1:/db_backup_tenancy_demo.sql /root/copiabackup.sql
    
  8. Puede descargar el archivo a su máquina local mediante SCP o clientes gráficos como WinSCP o FileZilla.


🗄️ Generar Backup con Gestores Gráficos (HeidiSQL / DBeaver)

Si tiene abierto el puerto de base de datos (3306) o utiliza un túnel SSH:

  1. Conéctese al servidor desde HeidiSQL, DBeaver o Navicat con el usuario root y su contraseña.
  2. Haga clic derecho sobre la base de datos a respaldar (system o tenancy_nombre_empresa).
  3. Seleccione Exportar base de datos como SQL / Dump Database.
  4. Configure las opciones de estructura y datos y guarde el archivo localmente.