Quick and Dirty Wordpress Backup Script (*NIX Shell)

Here’s a quick and dirty script to back up a wordpress blog.  In fact, it’s the backup script we use to back up Jigcode.  Of course, all of the hostnames, usernames and passwords have been removed.

This runs from a crontab which gets e-mailed to me, so I do an ‘ls’ at the end so I can see the fruits of my labor.

A prerequisite is that you set up SSH keys to connect to the host, so you don’t need to store a plaintext password.

This script runs on FreeBSD.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#!/bin/sh
cd /tank/backup/jigcode
 
rm -f wordpress_blog.sql.gz.003
mv wordpress_blog.sql.gz.002 wordpress_blog.sql.gz.003
mv wordpress_blog.sql.gz.001 wordpress_blog.sql.gz.002
mv wordpress_blog.sql.gz wordpress_blog.sql.gz.001
 
/usr/local/bin/mysqldump -h HOSTNAME -uUSERNAME -pPASSWORD DATABASENAME --complete-insert --create-options > wordpress_blog.sql
if [ $? -ne 0 ]; then
    echo "Error returned from MYSQLDUMP!"
fi
 
/usr/local/bin/rsync --del -r --verbose USERNAME@HOSTNAME:jigcode /tank/backup/jigcode/
if [ $? -ne 0 ]; then
    echo "Error returned from rsync!"
fi
 
gzip -9 wordpress_blog.sql
if [ $? -ne 0 ]; then
    echo "Error returned from gzip!"
fi
ls -alth /tank/backup/jigcode
Posted by: David Andrzejewski on June 11, 2009 • Tags: , , , • Posted in: Jigs

Comments are closed for this entry.