Created
October 13, 2012 06:06
-
-
Save leoken/3883446 to your computer and use it in GitHub Desktop.
complete wordpress backup from shell
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
# This script creates a compressed backup archive of the given directory and the given MySQL table. More details on implementation here: http://theme.fm | |
# Feel free to use this script wherever you want, however you want. We produce open source, GPLv2 licensed stuff. | |
# Author: Konstantin Kovshenin exclusively for Theme.fm in June, 2011 | |
# Set the date format, filename and the directories where your backup files will be placed and which directory will be archived. | |
NOW=$(date +"%Y-%m-%d-%H%M") | |
FILE="example.org.$NOW.tar" | |
BACKUP_DIR="/home/username/backups" | |
WWW_DIR="/home/username/www/example.org/" | |
# MySQL database credentials | |
DB_USER="mysqluser" | |
DB_PASS="mysqlpass" | |
DB_NAME="example_org" | |
DB_FILE="example.org.$NOW.sql" | |
# Tar transforms for better archive structure. | |
WWW_TRANSFORM='s,^home/username/www/example.org,www,' | |
DB_TRANSFORM='s,^home/username/backups,database,' | |
# Create the archive and the MySQL dump | |
tar -cvf $BACKUP_DIR/$FILE --transform $WWW_TRANSFORM $WWW_DIR | |
mysqldump -u$DB_USER -p$DB_PASS -$DB_NAME > $BACKUP_DIR/$DB_FILE | |
# Append the dump to the archive, remove the dump and compress the whole archive. | |
tar --append --file=$BACKUP_DIR/$FILE --transform $DB_TRANSFORM $BACKUP_DIR/$DB_FILE | |
rm $BACKUP_DIR/$DB_FILE | |
gzip -9 $BACKUP_DIR/$FILE |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
http://theme.fm/2011/06/a-shell-script-for-a-complete-wordpress-backup-4/