Skip to content

Commit

Permalink
fix #1: delete old backup files older then x days number setted into …
Browse files Browse the repository at this point in the history
…config file
  • Loading branch information
alfiosalanitri committed Nov 12, 2022
1 parent 6336435 commit e9f2030
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 1 deletion.
1 change: 1 addition & 0 deletions .config.example
@@ -1,3 +1,4 @@
DATABASE_USER=your-user
DATABASE_PASSWORD=your-password
DELETE_BACKUPS_OLDER_THAN_DAYS=30
EXCLUDED_DATABASES=Database|information_schema|performance_schema|mysql
10 changes: 9 additions & 1 deletion backup-mysql
Expand Up @@ -50,7 +50,9 @@ BACKUP_TMP_DIR="/tmp/backup-mysql"
MYSQL_USER=$(awk -F'=' '/^DATABASE_USER=/ { print $2}' $1)
MYSQL_PASSWORD=$(awk -F'=' '/^DATABASE_PASSWORD=/ { print $2}' $1)
EXCLUDED_DATABASES=$(awk -F'=' '/^EXCLUDED_DATABASES=/ { print $2}' $1)
DELETION_DAYS_NUMBER=$(awk -F'=' '/^DELETE_BACKUPS_OLDER_THAN_DAYS=/ { print $2}' $1)
BACKUP_DESTINATION=${2%/}
BACKUP_FILENAME_PREFIX="mysqldump-databases"
MYSQL=/usr/bin/mysql
MYSQLDUMP=/usr/bin/mysqldump
if [ "" == "$MYSQL_USER" ]; then
Expand Down Expand Up @@ -88,11 +90,17 @@ for DB in $DATABASES; do
done

printf "\n[${YELLOW}${ICON_WAIT}${NOCOLOR}] Compressing directory...\n"
tar cJfP $BACKUP_DESTINATION/mysqldump-databases-$TIMESTAMP.tar.xz $BACKUP_TMP_DIR
tar cJfP $BACKUP_DESTINATION/$BACKUP_FILENAME_PREFIX-$TIMESTAMP.tar.xz $BACKUP_TMP_DIR
printf "[${GREEN}${ICON_OK}${NOCOLOR}] Archive stored into $BACKUP_DESTINATION directory.\n"
rm -r $BACKUP_TMP_DIR
printf "[${GREEN}${ICON_OK}${NOCOLOR}] Temporary directory deleted.\n\n"

#delete files older then days number
if [ $DELETION_DAYS_NUMBER -gt 0 ]; then
printf "[${YELLOW}${ICON_WAIT}${NOCOLOR}] Deleting backup files older then $DELETION_DAYS_NUMBER day/s...\n"
find $BACKUP_DESTINATION -mtime +$DELETION_DAYS_NUMBER -type f -name "$BACKUP_FILENAME_PREFIX*" -delete
printf "[${GREEN}${ICON_OK}${NOCOLOR}] Old backup files deleted with success.\n\n"
fi
END_TIME=$(date +%s)
ELAPSED=$(( end_time - start_time ))
printf "Backup date: $(date)\n"
Expand Down

0 comments on commit e9f2030

Please sign in to comment.