
La copia de seguridad es esencial para mantener sus datos seguros, y los procesos de copia de seguridad automatizados pueden ahorrarle tiempo y esfuerzo. Si su base de datos está faltando o corrompida, entonces obtener la copia de seguridad más reciente puede ser un salvavidas.
Las copias de seguridad regulares son esenciales para usar cualquier sitio web o aplicación mysql Base de datos. La autorización de este proceso garantiza que las copias de seguridad regulares se realicen sin recordar realizarlas manualmente.
En esta guía, le mostraremos cómo crear un script bash simple para automatizar las copias de seguridad de la base de datos MySQL. Luego configuraremos un trabajo cron para ejecutar automáticamente este script de copia de seguridad en el momento programado para garantizar que su base de datos falle sin fallas.
Paso 1: crea un script de copia de seguridad de MySQL
Primero, creemos un script bash simple que pueda manejar el proceso de copia de seguridad.
nano backup_mysql.sh
Copie y pegue el siguiente script en backup_mysql.sh documento:
#!/bin/bash
# MySQL Credentials
MYSQL_USER="your_mysql_username"
MYSQL_PASS="your_mysql_password"
MYSQL_HOST="localhost"
# Backup Directory (ensure this directory exists)
BACKUP_DIR="/path/to/your/backup/directory"
# Get current date to append to backup filename
DATE=$(date +"%Y-%m-%d_%H-%M-%S")
# Databases to back up (list the names of the databases you want to back up)
DATABASES=("db1" "db2" "db3")
# Loop through each database and back it up
for DB in "${DATABASES[@]}"; do
BACKUP_FILE="$BACKUP_DIR/$DB_$DATE.sql"
echo "Backing up database $DB to $BACKUP_FILE..."
# Perform the backup using mysqldump
mysqldump -u $MYSQL_USER -p$MYSQL_PASS -h $MYSQL_HOST $DB > $BACKUP_FILE
# Check if the backup was successful
if [ $? -eq 0 ]; then
echo "Backup of $DB completed successfully!"
else
echo "Backup of $DB failed!"
fi
done
# Clean up backups older than 30 days (optional)
find $BACKUP_DIR -type f -name "*.sql" -mtime +30 -exec rm -f {} \;
¿Qué hace este script?
- credenciales mysql: Debe proporcionar el nombre de usuario, la contraseña y el host de MySQL (generalmente localhost).
- Directorio de respaldo: Aquí es donde está el almacenamiento de su copia de seguridad. Asegúrese de que este directorio exista en su sistema.
- Copia de seguridad de la marca de tiempo: Este script usa marcas de tiempo para crear copias de seguridad (por ejemplo, 2025-04-28_12-30-00.SQL) Evite sobrescribir copias de seguridad antiguas.
- Copia de seguridad de la base de datos:existir
DATABASESMatriz, enumerando el nombre de la base de datos que se respalda. Puede agregar o eliminar bases de datos según sea necesario. - Comando de respaldo: Usa scripts mysqldump Cree una copia de seguridad de la base de datos.
- Limpieza de respaldo antiguo: El script también eliminó más de 30 días de copia de seguridad (puede ajustar esta vez según sea necesario).
Después de guardar el script, hazlo ejecutable ejecutándolo chmod Orden:
chmod +x backup_mysql.sh
Paso 2: prueba el script de copia de seguridad de MySQL
Antes de configurar un trabajo cron, es mejor probar manualmente el script para asegurarse de que todo funcione como se esperaba.
./backup_mysql.sh
Consulte su directorio de copia de seguridad para asegurarse de que la copia de seguridad se cree con éxito. Si todo se ve bien, pasa al siguiente paso.
Paso 3: automatizar copias de seguridad MySQL con trabajos cron
Ahora que tenemos el script de copia de seguridad, el siguiente paso es automatizarlo usando Cron, una herramienta que ejecuta comandos en el momento programado.
crontab -e
Agregue un trabajo cron para ejecutar automáticamente el script de copia de seguridad. Por ejemplo, para ejecutar un script a las 2 a.m. todos los días, agregue la siguiente línea:
0 2 * * * /bin/bash /path/to/your/backup_mysql.sh
Así es como funciona el horario de Cron:
0: Minutos (mío 0).2: Hora (2 am).*: Todos los días de un mes.*: Todos los meses.*: Todos los días de la semana.
Para verificar que su trabajo cron se esté ejecutando, puede verificar el registro del sistema o el script de configuración temporal para ejecutarse en un momento más cercano para ver si funciona.
grep CRON /var/log/syslog
Otras consideraciones
- Seguridad: Es conveniente pero no es seguro almacenar su contraseña MySQL en un script. Para una mejor seguridad, puede almacenar sus credenciales en
.my.cnfPresente en su directorio de inicio y configure los scripts para leer desde allí. - Ubicación de respaldo: Asegúrese de que el directorio de respaldo tenga suficiente espacio para la copia de seguridad. Si está ejecutando varias copias de seguridad, es mejor configurar una ubicación de almacenamiento separada (como disco duro externo o almacenamiento en la nube).
- Frecuencia de respaldo: Dependiendo de la frecuencia con la que cambie los datos, es posible que deba ajustar el horario de trabajo del Cron. Por ejemplo, puede correr copias de seguridad por hora, semanal o solo en ciertos días.
en conclusión
Al automatizar las copias de seguridad de MySQL con scripts bash simples y trabajos de cron, puede asegurarse de que está respaldando su base de datos de manera regular y segura sin recordarlo manualmente. Con solo unas pocas líneas de código, puede configurar un sistema de copia de seguridad automático que se ejecuta a sus intervalos preferidos.
![Pixie Dust Attack: piratea enrutadores inalámbricos [Easy Guide]](https://muylinux.xyz/wp-content/uploads/2023/12/1701921547_Pixie-Dust-Attack-piratea-enrutadores-inalambricos-Easy-Guide.webp-220x150.jpeg)



![[Fixed] Problema "Clave almacenada en el conjunto de claves de trusted.gpg heredado"](https://muylinux.xyz/wp-content/uploads/2022/11/Fixed-Problema-Clave-almacenada-en-el-conjunto-de-claves-de-390x220.png)



