Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- ##################################################
- # Ce script effectue une sauvegarde des bases de
- # données et du dossier des sites et transfert
- # cette sauvegarde sur un serveur FTP
- ##################################################
- ##############################################
- # Variables à modifier
- ##############################################
- #hote FTP
- FTP_SERVER=""
- #login FTP
- FTP_LOGIN=""
- #pass FTP
- FTP_PASS=""
- FTP_SERVER_HOME=""
- #login FTP
- FTP_LOGIN_HOME=""
- #pass FTP
- FTP_PASS_HOME=""
- #Utilisateur MySQL
- MUSER=""
- #pass MySQL
- MPASS=""
- #hote MySQL
- MHOST="localhost"
- #Dossier à sauvergarder (dossier dans lequel les sites sont placés)
- DIRSITES="/var/www/"
- ##############################################
- # dossiers temporaires crées (laissez comme ça, ou pas)
- ##############################################
- #Dossier de sauvegarde temporaire des dumps sql
- DIRSAVESQL="daily_backup/sql"
- #Dossier de sauvegarde temporaire des sites
- DIRSAVESITES="daily_backup/sites"
- ##############################################
- #
- ##############################################
- MYSQL="$(which mysql)"
- MYSQLDUMP="$(which mysqldump)"
- GZIP="$(which gzip)"
- PBZIP2="$(which pbzip2)"
- TAR="$(which tar)"
- DBS="$(mysql -u $MUSER -h $MHOST -p$MPASS -Bse 'SHOW DATABASES')"
- DATE_FORMAT=`date +%Y-%m-%d`
- if [ ! -d $DIRSAVESITES ]; then
- mkdir -p $DIRSAVESITES
- else
- :
- fi
- if [ ! -d $DIRSAVESQL ]; then
- mkdir -p $DIRSAVESQL
- else
- :
- fi
- echo "Sauvegarde des bases de données :"
- for db in $DBS
- do
- echo "Database : $db"
- FILE=$DIRSAVESQL/mysql-$db-$DATE_FORMAT.bz2
- `$MYSQLDUMP -u $MUSER -h $MHOST -p$MPASS $db --single-transaction --qui$
- done
- echo "Creation de l'archive des dumps"
- `$TAR -cvzf base-$DATE_FORMAT.tar.bz2 $DIRSAVESQL`
- echo "Création de l'archive des sites"
- `$TAR -cvzf sites-$DATE_FORMAT.tar.gz $DIRSITES`
- echo "Connexion au serveur FTP et envoi des données"
- ftp -n $FTP_SERVER <<END
- user $FTP_LOGIN $FTP_PASS
- put base-$DATE_FORMAT.tar.bz2 /base-$DATE_FORMAT.tar.bz2
- put sites-$DATE_FORMAT.tar.gz /sites-$DATE_FORMAT.tar.gz
- quit
- END
- ftp -n $FTP_SERVER_HOME <<END
- user $FTP_LOGIN_HOME $FTP_PASS_HOME
- put base-$DATE_FORMAT.tar.bz2 /base$
- put sites-$DATE_FORMAT.tar.gz /site$
- quit
- END
- echo "Suppression de l'archive de sauvegarde SQL"
- rm -Rf $DIRSAVESQL
- rm base-$DATE_FORMAT.tar.bz2
- echo "Suppression de l'archive de sauvegarde des sites"
- rm -R $DIRSAVESITES
- rm sites-$DATE_FORMAT.tar.gz
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement