Bonjour,
Voila aujourd’hui j’ai un script qui me sauvegarde mes bases mysql et va les copier sur un ftp.
Tous les jours, un fichier.sql est généré avec la date.
Mon problème est le suivant : Si de temps à autre je ne supprime pas mes .sql, JE VAIS FAIRE PETER LE DISQUE DUR !!!
Je veux donc mettre en place un système qui supprimerai les sauvegardes plus vieilles que 2 semaines.
2 solutions :
soit je crée automatiquement en début de semaine un dossier qui va recevoir les 7 sauvegardes de la semaine et en plus de cela je programme une suppression de dossier pour ne garder que les 2 derniers dossiers.
soit je garde mon script actuel dans lequel il n’y a aucune notion de semaine et je ne garde que les 14 derniers fichiers générés et je supprime le reste.
- qu’en pensez vous ? quel est le meilleur choix ?
- avez vous une trame de code à me faire parvenir ?
Voici mon backupbdd.sh :
echo “Creation de l’archive …”
DATE=$(date +%d-%m-%Y-%H-%M) # pour donner une date a chaque sauvegarde
FICHIER=/home/backups/bdd${DATE}.sql
mysqldump -uroot -ptoor --all-databases > $FICHIER
echo “Archive faite …”
echo “Envoi de l’archive sur le serveur FTP …”
HOST='192.168.1.50’
USER='sauvegarde’
PASSWD=‘sauvegarde’
ftp -n $HOST <<TOTO
user $USER $PASSWD
binary
cd bddmysql
put $FICHIER bdd${DATE}.sql
quit
TOTO
echo “Envoi reussi !”