sql >> Base de Datos >  >> RDS >> Mysql

Cree copias de seguridad físicas de sus bases de datos MariaDB o MySQL

Mientras que mysqldump La herramienta es el método de copia de seguridad preferido para una base de datos MariaDB o MySQL o un sistema de base de datos. Solo funciona cuando se puede acceder al servidor de la base de datos y se está ejecutando. Si no se puede iniciar la base de datos o no se puede acceder al sistema host, aún se puede copiar la base de datos directamente.

Una copia de seguridad física a menudo es necesario en situaciones en las que solo tiene acceso a un entorno de recuperación (como Finnix) donde monta los discos de su sistema como dispositivos de almacenamiento externo. Si desea leer sobre copias de seguridad lógicas usando mysqldump , consulta nuestra guía sobre el tema.

Para simplificar, se usará el nombre MySQL a lo largo de esta guía, pero las instrucciones funcionarán tanto para MySQL como para MariaDB.

Nota Los pasos de esta guía requieren privilegios de root. Inicie sesión como usuario root con su - antes de empezar.

Crear una copia de seguridad

  1. Si no está ejecutando en modo de recuperación (una sesión de Finnix), detenga mysql servicio:

    systemctl stop mysql
    
  2. Localice el directorio de su base de datos. Debería ser /var/lib/mysql/ en la mayoría de los sistemas, pero si ese directorio no existe, examine /etc/mysql/my.cnf para una ruta al directorio de datos.

  3. Cree un directorio para almacenar sus copias de seguridad. Esta guía usará /opt/db-backups pero puede modificar esto para adaptarlo a sus necesidades:

    mkdir /opt/db-backups
    
  4. Copie el directorio de datos de MySQL en una ubicación de almacenamiento. El cp comando, rsync , u otros métodos funcionarán bien, pero usaremos tar para copiar recursivamente y gzip la copia de seguridad a la vez. Cambie el directorio de la base de datos, el nombre del archivo de copia de seguridad y el directorio de destino según sea necesario; el -$(date +%F) Además del comando, se insertará una marca de tiempo en el nombre del archivo.

    tar cfvz /opt/db-backups/db-$(date +%F).tar.gz /var/lib/mysql/*
    
  5. Reinicie el servicio MySQL:

    systemctl restart mysql
    

Restaurar una copia de seguridad

  1. Cambie su directorio de trabajo a un lugar donde pueda extraer el tarball creado anteriormente. El directorio de inicio del usuario actual se usa en este ejemplo:

    cd
    
  2. Detenga el mysql servicio:

    systemctl stop mysql
    
  3. Extraiga el tarball al directorio de trabajo. Cambie el nombre de archivo del tarball en el comando al que tenga la fecha a la que desea restaurar.

     tar zxvf /opt/db-backups/db-archive.tar.gz -C .
    
  4. Mover el contenido actual de /var/lib/mysql a otra ubicación si desea conservarlos por algún motivo, o eliminarlos por completo. Crea un nuevo mysql vacío carpeta para restaurar su DMBS respaldado.

    mv /var/lib/mysql /var/lib/mysql-old
    mkdir /var/lib/mysql
    
  5. Copie el sistema de base de datos respaldado en la carpeta vacía:

    mv ~/var/lib/mysql/* /var/lib/mysql
    
  6. Establezca los permisos adecuados para los archivos que acaba de restaurar:

    chown -R mysql:mysql /var/lib/mysql
    
  7. Reinicie el servicio MySQL:

    systemctl restart mysql
    

Más información

Es posible que desee consultar los siguientes recursos para obtener información adicional sobre este tema. Si bien estos se proporcionan con la esperanza de que sean útiles, tenga en cuenta que no podemos garantizar la precisión o la puntualidad de los materiales alojados externamente.

  • Descripción general de copia de seguridad y restauración; Biblioteca MariaDB
  • Métodos de copia de seguridad de la base de datos; Manual de referencia de MySQL