Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- DATABASEUSER=[changeme]
- DATABASEPASS=[changeme]
- BACKUPDIR=/home/backup/database
- DATE=`date +'%d-%m-%Y'`
- SAVELOCATION=$BACKUPDIR/$DATE
- #Check if location to save exists, if not create it
- [ ! -a $SAVELOCATION ] && mkdir -p $SAVELOCATION ;
- echo "$DATE database backup starting, saving to $SAVELOCATION"
- #Get a list of datbases to backup
- mysql -u $DATABASEUSER -p$DATABASEPASS -e "show databases" -s > .databasesToBackup;
- #Parese list of databases and then backup using mysqldump
- cat .databasesToBackup | while read line; do
- mysqldump -u $DATABASEUSER -p$DATABASEPASS $line | gzip > $BACKUPDIR/$DATE/$line.sql.gz
- done
- rm .databasesToBackup
- LINECOUNT=`ls $SAVELOCATION | wc -l`
- echo "Backed up $LINECOUNT databases ";
- #Delete all files in the backup dir 35 days or older - note this deletes everything!
- #only database backups should exist in $BACKUPDIR!!!
- find $BACKUPDIR -mtime +35 -type d -exec rm -rf {} \;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement