Cómo hacer una copia de seguridad automática de la base de datos MySQL usando Bash Script

Como Hacer Una Copia De Seguridad Automatica De La Base De Datos Mysql Usando Bash Script



MySQL es un RDBMS popular que ayuda a almacenar y administrar bases de datos relacionales sin esfuerzo. También proporciona la utilidad de cliente mysqldump para crear una copia de seguridad lógica de las bases de datos MySQL. MySQL es compatible con varios idiomas y plataformas, lo que significa que puede utilizar secuencias de comandos de Bash para utilizar la utilidad mysqldump para realizar copias de seguridad en Linux.

Esta guía demostrará cómo hacer una copia de seguridad automática de las bases de datos MySQL utilizando el script Bash, paso a paso.

¿Cómo hacer una copia de seguridad automática de la base de datos MySQL usando Bash Script?

Cree un script Bash para la copia de seguridad de la base de datos MySQL. En primer lugar, abra la terminal, cree un directorio y navegue hasta el directorio escribiendo estos comandos:







mkdir mysqlbackup

cd copia de seguridad mysql/

El resultado muestra que ha navegado con éxito al directorio:





Cree un script bash llamado ' backup.sh ” usando cualquier editor, para esta publicación se está usando el editor nano:





copia de seguridad nano.sh

El script bash creará:



Proporcione las credenciales de MySQL y el nombre de la base de datos que desea respaldar:

DB_USER='nombre de usuario'

DB_PASS='contraseña'

DB_

Establecer el directorio de copia de seguridad “ RESPALDO_DIR ” al proporcionar la ubicación donde se debe guardar el archivo de copia de seguridad:

BACKUP_DIR='/ruta/a/su/copia de seguridad/directorio'

Establezca el formato de fecha para el nombre del archivo de copia de seguridad:

FECHA=$(fecha +'%Y-%m-%d_%H-%M-%S')

Utilice este comando mysqldump con las credenciales de la base de datos MySQL para crear el archivo de copia de seguridad de SQL:

mysqldump --user=$DB_USER --password=$DB_PASS $DB_NAME > $BACKUP_DIR/$DB_NAME-$DATE.sql

Para comprimir el archivo de respaldo de SQL con la herramienta gzip, use este comando:

gzip $BACKUP_DIR/$DB_NAME-$DATE.sql

Para ahorrar espacio en el disco, elimine los archivos de respaldo antiguos después de un período de tiempo, para este período “ 7 El archivo de copia de seguridad de días de antigüedad se eliminará con este comando:

encontrar $BACKUP_DIR -tipo f -nombre '*.gz' -mtime +7 -eliminar

Guarde el archivo y salga del editor nano presionando ' CTRL + X ' llaves:

Cambie los permisos del script bash a ejecutable ejecutando este comando:

chmod +x copia de seguridad.sh

La salida sin errores significa que la ejecución del comando es exitosa:

Ejecute el script usando este comando bash:

sudo bash copia de seguridad.sh

Escriba la contraseña de Ubuntu y use el ' ls Comando para verificar si el archivo de copia de seguridad se crea o no:

El archivo de copia de seguridad se crea correctamente mediante el script bash. Ahora para automatizar el proceso de copia de seguridad mediante el uso de la ' cron Utilidad del programador de trabajos. Para enviar un nuevo trabajo cron, use el ' -Es ” opción con crontab:

crontab -e

Establezca el tiempo para ejecutar automáticamente el script bash. Para esta publicación, “ 2 a.m. ” está seleccionado para ejecutar el script automáticamente:

0 2 * * * /path/to/backup_mysql.sh

Guardar y salir del archivo:

Veamos otro comando si desea hacer una copia de seguridad de su base de datos después de cada ' 5 minutos ” escriba esto y guarde el archivo:

*/5 * * * * /path/to/backup_mysql.sh

El crontab tardará un tiempo en crear el trabajo con éxito:

Busque en el directorio los archivos de copia de seguridad que se crean automáticamente después de “ 2 a.m. ', utilizando el ' ls ' dominio:

Los archivos de copia de seguridad de la base de datos MySQL se crean automáticamente mediante el script bash y la utilidad cron.

Conclusión

Cree un script bash proporcionando las credenciales de MySQL y el nombre de la base de datos de la que desea hacer una copia de seguridad y el formato del nombre del archivo. Use el comando mysqldump para crear el archivo SQL de copia de seguridad, gzip para comprimirlo y ejecute el script. Utilice el crontab para que el proceso de copia de seguridad sea automático. Esta publicación discutió cómo hacer una copia de seguridad de una base de datos MySQL usando el script Bash automáticamente.