Lecza István (Isu)

My developer life, CV and others...

július 24 21:26:10, 2009

Már egy ideje próbálok időt szakítani egy normális backup script megírására, és ma sikerült kiizzadni egy egész jól használhatót.

Nem túl profi ugyan, de ha már kész, gondoltam közzé teszem, hátha hasznos lesz:

MYSQL BACKUP

Root felhasználó lekéri a létező adatbázisokat, majd egyenként (fájlonként) mysqldumpol. 3 napra visszamenőleg megmaradnak a mentések.

#!/bin/bash
# backup_mysql_v2.sh

BACKUP_DIR="/backup/"

rm -r $BACKUP_DIR$(date --date='3 day ago' +%Y%m%d)
mkdir $BACKUP_DIR$(date +%Y%m%d)


echo "SHOW DATABASES;" > /tmp/query
DUMP=`mysql -urootuser -prootpassword < /tmp/query`

arr=$(echo $DUMP | tr " " " ")

for x in $arr
do
    if [ $x != "Database" ]; then
        mysqldump -urootuser -prootpassword $x > $BACKUP_DIR$(date +%Y%m%d)/$x.sql
        gzip $BACKUP_DIR$(date +%Y%m%d)/$x.sql
        echo "$x" database stored.
    fi
done

WWW dir BACKUP

Egy gyökérkönyvtárat megadva, a benne lévő almappákat egyenként targz-zi. 3 napra visszamenőleg megmaradnak a mentések.

#!/bin/bash
# backup_vhosts_v2.sh

VHOSTS="/var/www/vhosts/"
BACKUP_DIR="/backup/"

rm -r $BACKUP_DIR$(date --date='3 day ago' +%Y%m%d)
mkdir $BACKUP_DIR$(date +%Y%m%d)

cd $VHOSTS

for i in $( ls );
do
    tar -czf $BACKUP_DIR$(date +%Y%m%d)/$i.tgz $i > /dev/null
    echo "$VHOSTS$i" stored.
done


Hát ennyi...

HOZZÁSZÓLÁS, VÉLEMÉNYEK

* Név
* E-mail
Weboldal, blog
* Hozzászólás
* Biztonsági kód
* A "Weboldal, blog" mező kivetélével minden mező kitöltése kötelező!