ccurtin
10/6/2016 - 5:42 AM

Create a backup. Best to place this in `/bin/make_backup` and chmod +x so that users can run the command whenever they want.

Create a backup.

Best to place this in /bin/make_backup and chmod +x so that users can run the command whenever they want.

# FIRST UPDATE THE TIMEZONE #
# /etc/localtime is a file. not a dir.
cp /usr/share/zoneinfo/America/New_York /etc/localtime


# PLACE CODE BELOW IN A FILE /bin/make_backup. EDIT AS NEEDED!


#!/bin/bash
GREEN="$(echo -e "\033[32m")"
YELLOW="$(echo -e "\033[33m")"
RESET="$(echo -e "\033[0m")"
BU_NAME=$(date +%Y-%m-%d-%H-%M).sql

BACKUP_FILE="MYSQL-BACKUPS/daily/site-backup-daily-$BU_NAME"

sudo mysqldump wordpress -u USERNAME -pPASSWORD > $BACKUP_FILE

if [ ${#BACKUP_FILE[@]} -gt 0 ]; then 
    echo ${GREEN}Backup Successful!${RESET};
else
    echo ${YELLOW}Error Creating Backup File!${RESET};
fi
#!/bin/bash
GREEN="$(echo -e "\033[32m")"
YELLOW="$(echo -e "\033[33m")"
RESET="$(echo -e "\033[0m")"
BU_NAME=$(hostname)-site-backup-$(date +%Y-%m-%d-%H-%M)
BACKUPS_DIR="/vagrant/www/BACKUPS/$BU_NAME"
# inject date into SQL filenames.
BACKUP_DB="$BU_NAME.sql"
BACKUP_DB_FULL="/vagrat/www/BACKUPS/$BU_NAME/site-backup-$BU_NAME.sql"
BACKUP_ZIP="$BU_NAME.zip"

# make backup folder if it doesn't exist 
if [ ! -d "$BACKUPS_DIR"  ]; then
    sudo mkdir "$BACKUPS_DIR"
fi

# SHOULD PROBABLY MAKE THIS A KEY TO VALIDATE USER OR JUST ASK EACH TIME FOR CREDS. NOT REALLY SAFE!
sudo mysqldump wordpress -u root -pwordpress > "$BACKUPS_DIR/$BACKUP_DB"

if [ ${#BACKUP_DB_FULL[@]} -gt 0 ]; then
    echo ${GREEN}Backup Successful!${RESET};
else
    echo ${YELLOW}Error Creating Backup File!${RESET};
fi

read -p "Would you like to backup all files too? [y/n]" prompt
if [[ ${prompt,,} =~ ^(yes|y)$ ]]; then
        zip -r "$BACKUPS_DIR/$BACKUP_ZIP" "/vagrant/www/wordpress"
fi