#!/bin/bash # 📅 Format de la date pour le nom du fichier DATE=$(date +%Y-%m-%d-%Hh%M) BACKUP_DIR="/home/debian/backup" SQL_FILE="all-databases_${DATE}.sql" # 🔐 Fichier de conf MySQL contenant les identifiants MYSQL_CNF="/home/debian/my.env" # 📤 Emplacement de destination sur le NAS NAS_USER="Michel" NAS_IP="10.8.0.1" NAS_DIR="/volume1/nfs/bwps" SSH_KEY="/home/debian/.ssh/id_rsa" # ✅ Créer le dossier de backup si nécessaire mkdir -p "$BACKUP_DIR" # 🗃 Dump MySQL mysqldump --defaults-extra-file="$MYSQL_CNF" --all-databases > "$BACKUP_DIR/$SQL_FILE" # 🔁 Envoi via rsync avec clé SSH rsync -avz -e "ssh -i $SSH_KEY -o ConnectTimeout=10" "$BACKUP_DIR/$SQL_FILE" "$NAS_USER@$NAS_IP:$NAS_DIR/" # 🧹 Suppression des fichiers SQL locaux de + de 7 jours find "$BACKUP_DIR" -name "*.sql" -mtime +7 -exec rm {} \; # ✅ Log de succès echo "[OK] Sauvegarde terminée à $(date)"