Илья Спесивцев Администратор
Зарегистрирован: 26.02.2008 Сообщения: 703 Откуда: Техподдержка
|
Добавлено: 2012-03-31 12:35 pm Заголовок сообщения: Полный бекап всех баз данных |
|
|
Создаем скрипт:
Код: | touch /root/mysql-backup.sh
chmod 700 /root/mysql-backup.sh |
и добавляем в него:
Код: |
#!/usr/local/bin/bash
DATE=`date +%Y-%m-%d`
FN=backup.${DATE}
BK_DIR_SQL='/path/to/backup/sql'
BK_FILE=${BK_DIR_SQL}/${FN}.sql.tar.bz2
BASEPARAM='-uroot -pпароль'
PARAM="--quote-names --add-drop-table $BASEPARAM"
cd ${BK_DIR_SQL}
IGGY="test information_schema performance_schema"
DBS="$(/usr/local/bin/mysql $BASEPARAM -Bse 'show databases')"
for db in $DBS
do
skipdb=-1
if [ "$IGGY" != "" ];
then
for i in $IGGY
do
[ "$db" == "$i" ] && skipdb=1 || :
done
fi
if [ "$skipdb" == "-1" ] ; then
echo $db
/usr/bin/nice -n 20 /usr/local/bin/mysqldump ${PARAM} $db > $db.sql
fi
done
/usr/bin/tar -cjvf ${BK_FILE} *.sql && chmod 600 ${BK_FILE} && rm *.sql
|
Редактируем пути и пароли под свою систему.
И добавляем в crontab (например, на каждую субботу в 5:00):
Код: | 0 5 * * 6 /root/mysql-backup.sh >/dev/null 2>&1 |
|
|