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.
1. qu'en pensez vous ? quel est le meilleur choix ?
2. avez vous une trame de code à me faire parvenir ?
Voici mon backupbdd.sh :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 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 !"
Partager