Някой да помогне с команда за Back Up на MySQL чрез Cron Jobs?

kostianev

Member
Здравейте, искам да правя Back Up на Базата ми на всеки 1 час с Cron Jobs. Настройките горе-доло ги ги направих, но ми липсват познанията за командата. Някой да помогне?
 
От: Някой да помогне с команда за Back Up на MySQL чрез Cron Jobs?

Ето ти един, както е настроен дъмпи всички бази (преди това ги проверява и оптимизира таблиците). Малко като си промениш опциите и си готов.

-------------------------------------------------

#!/bin/bash

# MySQL backup script

# mysqldump usage:
# mysqldump [OPTIONS] database [tables]
# OR mysqldump [OPTIONS] --databases [OPTIONS] DB1 [DB2 DB3...]
# OR mysqldump [OPTIONS] --all-databases [OPTIONS]

NOW=$(date +%Y-%m-%d-%H-%M)
BACK="/home/backup/"
DUMP="mysql-${NOW}.sql"
ARCH="mysql-${NOW}.tgz"
OPTS="--databases --add-drop-database --routines --triggers --all-databases"
USER=zzzzzzzzzzzzzzzzz
PASS=ccccccccccccccccccc
HOST=localhost

# ##############################################################################

test -d $BACK || ( mkdir $BACK > /dev/null 2>&1 ) || ( echo "Error: can not create backps directory" && exit 1 )
cd $BACK > /dev/null 2>&1 || ( echo "Error: backps directory is not accesible" && exit 1 )

mysqlcheck -u$USER -p$PASS -h$HOST -A
mysqldump -u$USER -p$PASS -h$HOST $OPTS > $DUMP
tar -czf $ARCH $DUMP
rm $DUMP

echo "${NOW}: Backup completed"

exit 0

-------------------------------------------------

Това го слагаш в един файл, и в /etc/crontab слагаш:

0 4 * * * some-username /home/backup/backup-mysql.sh > /home/backup/backup-mysql.log 2>&1
 
От: Някой да помогне с команда за Back Up на MySQL чрез Cron Jobs?

Ако ти е огромна базата данни, в горния скрипт може би ще искаш да замениш mysqldump с mysqlhotcopy.
 

Горе