#!/bin/sh # # mysql-full.sh v1.3a # TiChou BACKUPDIR="/data/backup" USER="root" PASS="foobar" WEEK="`date +%U`" OLDWEEK="`date -d '4 week ago' +%U`" umask 037 # mysql / log-bin in my.cnf mkdir -p "$BACKUPDIR/mysql" mysqlhotcopy --user="$USER" --password="$PASS" --socket=/var/run/mysqld/mysqld.sock \ --regexp=".*" --allowold --resetmaster --quiet "$BACKUPDIR/mysql" ARCHIVE="$BACKUPDIR/archives/sql-full-week-$WEEK.tar.gz" star -cz -sparse -fifo \ -no-statistics -silent \ -not pat='mysql' \ C="$BACKUPDIR" mysql > "$ARCHIVE" md5sum "$ARCHIVE" > "$ARCHIVE.md5" chattr +i "$ARCHIVE"{,.md5} rm -rf "$BACKUPDIR/mysql" OLDARCHIVE="$BACKUPDIR/archives/sql-full-week-$OLDWEEK.tar.gz" chattr -i "$OLDARCHIVE"{,.md5} rm -f "$OLDARCHIVE"{,.md5}