Lyalenko Deniel
09.04.2011 22:44:23
Все, у кого проблемы со скриптом Дениса. Попробуйте этот ревижн.
Код
#!/bin/bash
doc_root=$1
name=$2
if [ -z $doc_root ]; then
echo Usage: $0 /path/to/document/root [backup_name]
exit
fi
if [ -z $name ]; then
name=backup-`date +\%H-\%d\%m\%Y`
fi
dbconn=$doc_root/bitrix/php_interface/dbconn.php
readcfg() {
grep $1 $dbconn | sed 's/.*"\(.*\)".*/\1/'
}
host=`readcfg DBHost`
username=`readcfg DBLogin`
password=`readcfg DBPassword`
database=`readcfg DBName`
utf=`grep 'BX_UTF' $dbconn | grep true`
if [ -z "$utf" ]; then
charset=cp1251
else
charset=utf8
fi
backup_dir=bitrix/backup
if [ ! -e $doc_root/$backup_dir ]; then
mkdir $doc_root/$backup_dir
fi
cd $doc_root &&
mysqldump -h$host -u$username -p$password --default-character-set=$charset $database >
$backup_dir/$name.sql &&
tar -cf $backup_dir/$name.tar --exclude='*bitrix/backup/*.tar' --exclude='*bitrix/tmp/*'
--exclude='*bitrix/updates/*' --exclude='*bitrix/*cache/*' . &&
gzip -f -9 $backup_dir/$name.tar &&
rm $backup_dir/$name.sql &&
echo OK && exit
echo Error
|
Файл дампа базы должен быть в архиве, в директории /bitrix/backup. |