trunk/qnd-mysql-backup.sh
author Sam Hart <criswellious@gmail.com>
Fri May 09 11:00:30 2008 -0400 (4 years ago)
branchpersonal-scripts
changeset 50 7dfbe97f63a7
parent 493c1e25e76f4d
permissions -rwxr-xr-x
Need to clear old directory before backup begins
criswellious@49
     1
#!/bin/sh
criswellious@49
     2
criswellious@49
     3
# A quick and dirty mysql backup tool
criswellious@49
     4
criswellious@49
     5
# date +%Y-%m-%d_%H:%M:%S
criswellious@49
     6
criswellious@49
     7
LOG_FILE="/var/log/qnd-mysql-backup.log"
criswellious@49
     8
criswellious@49
     9
trace () {
criswellious@49
    10
    stamp=`date +%Y-%m-%d_%H:%M:%S`
criswellious@49
    11
    echo "$stamp: $*" >> $LOG_FILE
criswellious@49
    12
}
criswellious@49
    13
criswellious@49
    14
ALL_DBS=$(cat <<EOF
criswellious@49
    15
list
criswellious@49
    16
of
criswellious@49
    17
databases
criswellious@49
    18
EOF
criswellious@49
    19
)
criswellious@49
    20
criswellious@49
    21
DEST_DIR="/path/to/backups/"
criswellious@49
    22
criswellious@49
    23
trace "qnd-mysql-backup started"
criswellious@49
    24
criswellious@49
    25
for a in $ALL_DBS
criswellious@49
    26
do
criswellious@49
    27
    trace "Working database: $a"
criswellious@50
    28
    trace "Clearing old backup"
criswellious@50
    29
    rm -vfr $DEST_DIR/$a >> $LOG_FILE 2>&1
criswellious@50
    30
    trace "Running backup"
criswellious@49
    31
    mysqlhotcopy $a $DEST_DIR >> $LOG_FILE 2>&1
criswellious@49
    32
done
criswellious@49
    33
criswellious@49
    34
trace "qnd-mysql-backup done"
criswellious@49
    35
trace "---------------------"