fsbackup

Проблемы с установкой, настройкой и работой системных и сетевых программ.

Модераторы: GRooVE, alexco

Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
zik
мл. сержант
Сообщения: 134
Зарегистрирован: 2007-05-24 21:14:01
Откуда: Одесса
Контактная информация:

fsbackup

Непрочитанное сообщение zik » 2007-09-21 18:41:56

Если кто работал с прогой интересует: можно ли сделать, так чтоб бекап mysql вместе с остальными данными копировался по сети, а не сохранялся в катологе sys_backup !?!?

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35454
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: fsbackup

Непрочитанное сообщение Alex Keda » 2007-09-25 0:59:25

видимо, никто не юзал :)
Убей их всех! Бог потом рассортирует...

Аватара пользователя
zik
мл. сержант
Сообщения: 134
Зарегистрирован: 2007-05-24 21:14:01
Откуда: Одесса
Контактная информация:

Re: fsbackup

Непрочитанное сообщение zik » 2007-09-26 15:34:23

Да скорее всего :(
А можно как-то другими средствами сделать копирование БД Мускула, желательно чтоб был инкрементальный бэкап с дальнейшей его заливкой по фтп или ссх, но если его его не будет придёться и так использовать.

Аватара пользователя
Neteru
мл. сержант
Сообщения: 77
Зарегистрирован: 2007-08-08 18:52:53
Контактная информация:

Re: fsbackup

Непрочитанное сообщение Neteru » 2007-10-10 8:59:30

на opennet.ru зайди, там целый раздел про нее! Да и что там с ней разбираться ОНА ЖЕ ВСЯ НА РУССКОМ ЯЗЫКЕ (я про коментарии и описание).
- Простите, так чья грудинка? Ваша или гос. Кирая?
- Кирая!
- Так вот пусть он ее и готовит!

Laterport
ефрейтор
Сообщения: 58
Зарегистрирован: 2012-03-30 13:00:17

Re: fsbackup

Непрочитанное сообщение Laterport » 2012-11-27 22:40:44

Подскажите пожалуйста что в скрипте отвечающем за дамп баз подправить? После выполнения создаются пару файлов

- baclup_in-mysql.gz 20 байт
- backup_in-struct-mysql 0 байт

Собственно всё. Явно что-то в скрипте нужно поправить для корректного дампа баз.

mysql_backup.sh
#!/bin/sh
# Script for backup SQL tables from MySQL
# Скрипт для бэкапа данных хранимых в Mysql.
#
# http://www.opennet.ru/dev/fsbackup/
# Copyright (c) 2001 by Maxim Chirkov. <mc@tyumen.ru>
#
# For restore data type:
# Восстановление производится с помощью команды: mysql < backupfile
#

#-------------------
# Name of backup, single word.
# Имя бэкапа.
#-------------------

backup_name="backup"


#-------------------
# Backup method:
# full - backup full DB's structure and data.
# db - backup full DB's structure and data only for 'backup_db_list' databases.
# notdb- backup full DB's structure and data for all DB's, except
# data of 'backup_db_list' databases.
#
# Метод бэкапа:
# full - полный бэкап всех баз (рекомендуется),
# аналог запуска pg_dumpall или mysqldump --all-databases --all
#
# db - бэкап только указанных в backup_db_list баз данных, записи по
# реконструкции баз и таблиц записываются для всех баз на SQL сервере.
# notdb - бэкап всех баз, кроме указанных в backup_db_list, записи по
# реконструкции баз и таблиц записываются для всех баз на SQL сервере.
# Возможно исключение из бэкапа выборочных таблиц, тогда формат
# списка исключаемых таблиц задается в виде:
# "trash_db1 trash_db2:table1 trash_db2:table2"
# - производим бэкап всех баз, коме базы trash_db1 и таблиц table1 и
# table2 базы trash_db2.
#
#-------------------

backup_method="full"


#-------------------
# List of databases (delimited by spaces)
# Список включаемых или исключаемых из бэкапа баз, через пробел.
# Таблицы указываются в виде: имя_базы:имя_таблицы
#-------------------

backup_db_list=""


#-------------------
# Auth information for MySQL.
# Имя пользователя и пароль для соединения с Mysql, для PostgreSQL скрипт
# должен запускаться из-под пользователя с правами полного доступа к базам PostgreSQL.
#-------------------

backup_mysqluser="root"
backup_mysqlpassword="12345"


#-------------------
# Directory to store SQL backup. You must have enought free disk space to store
# all data from you SQL server.
# Директория куда будет помещен бэкап данных с SQL сервера.
# Внимание !!! Должно быть достаточно свободного места для бэкапа всех
# выбранных БД.
#-------------------

backup_path="/usr/local/fsbackup/archive/"


#-------------------
# Full path of mysql programs.
# Путь к программам mysql
#-------------------

backup_progdump_path="/usr/local/bin"

#-------------------
# Extra flags for mysqldump program.
# -c (--complete-insert) - Use complete insert statements.
# Дополнительные параметры для pg_dump
# -c - формировать бэкап данных в виде INSERT комманд, с указанием названий
# столбцов. Если скорость восстановления из бэкапа и размер бэкапа
# более важны, и совместимостью с другими СУБД можно пренебречь,
# используйте: extra_mysqldump_flag=""
#-------------------

extra_mysqldump_flag="--complete-insert --host=$host_mysql"

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

if [ -n "$backup_progdump_path" ]; then
backup_progdump_path="$backup_progdump_path/"
fi

#-------------------------------------------------------------------------
# Mysql
if [ "_$backup_method" = "_full" ]; then
echo "Creating full backup of all MySQL databases."
${backup_progdump_path}mysqldump --all --add-drop-table --all-databases --force --no-data $extra_mysqldump_flag --password=$backup_mysqlpassword --user=$backup_mysqluser > $backup_path/$backup_name-struct-mysql
${backup_progdump_path}mysqldump --all-databases --all --add-drop-table --force $extra_mysqldump_flag --password=$backup_mysqlpassword --user=$backup_mysqluser |gzip > $backup_path/$backup_name-mysql.gz
exit
fi

#-------------------------------------------------------------------------
# Бэкап указанных баз для Mysql
if [ "_$backup_method" = "_db" ]; then
echo "Creating full backup of $backup_db_list MySQL databases."
${backup_progdump_path}mysqldump --all --add-drop-table --all-databases --force --no-data $extra_mysqldump_flag --password=$backup_mysqlpassword --user=$backup_mysqluser > $backup_path/$backup_name-struct-mysql
cat /dev/null > $backup_path/$backup_name-mysql

for cur_db in $backup_db_list; do
echo "Dumping $cur_db..."
cur_db=`echo "$cur_db" | awk -F':' '{if (\$2 != ""){print \$1, \$2}else{print \$1}}'`
${backup_progdump_path}mysqldump --all --add-drop-table --force $extra_mysqldump_flag --password=$backup_mysqlpassword --user=$backup_mysqluser $cur_db >> $backup_path/$backup_name-mysql
done
gzip -f $backup_path/$backup_name-mysql
exit
fi

#-------------------------------------------------------------------------
# Бэкап всех баз кроме указанных для Mysql
if [ "_$backup_method" = "_notdb" ]; then
echo "Creating full backup of all MySQL databases except databases $backup_db_list."
${backup_progdump_path}mysqldump --all --add-drop-table --all-databases --force --no-data $extra_mysqldump_flag --password=$backup_mysqlpassword --user=$backup_mysqluser > $backup_path/$backup_name-struct-mysql
cat /dev/null > $backup_path/$backup_name-mysql

for cur_db in `${backup_progdump_path}mysqlshow --password=$backup_mysqlpassword --user=$backup_mysqluser| tr -d ' |'|grep -v -E '^Databases$|^\+\-\-\-'`; do

grep_flag=`echo " $backup_db_list"| grep " $cur_db:"`
if [ -n "$grep_flag" ]; then
# Исключение таблиц для данной базы
for cur_db_table in `${backup_progdump_path}mysqlshow --password=$backup_mysqlpassword --user=$backup_mysqluser $cur_db| tr -d ' |'|grep -v -E '^Tables$|^Database\^\+\-\-\-'`; do

flag=1
for cur_ignore in $backup_db_list; do
if [ "_$cur_ignore" = "_$cur_db:$cur_db_table" ]; then
flag=0
fi
done

if [ $flag -gt 0 ]; then
echo "Dumping $cur_db:$cur_db_table..."
${backup_progdump_path}mysqldump --all --add-drop-table --force $extra_mysqldump_flag --password=$backup_mysqlpassword --user=$backup_mysqluser $cur_db $cur_db_table >> $backup_path/$backup_name-mysql

else
echo "Skiping $cur_db:$cur_db_table..."
fi
done
else
# Исключение базы
flag=1
for cur_ignore in $backup_db_list; do
if [ "_$cur_ignore" = "_$cur_db" ]; then
flag=0
fi
done

if [ $flag -gt 0 ]; then
echo "Dumping $cur_db..."
${backup_progdump_path}mysqldump --all --add-drop-table --force $extra_mysqldump_flag --password=$backup_mysqlpassword --user=$backup_mysqluser $cur_db >> $backup_path/$backup_name-mysql
else
echo "Skiping $cur_db..."
fi
fi
done
gzip -f $backup_path/$backup_name-mysql
exit
fi

echo "Configuration error. Not valid parameters in backup_method or backup_sqltype."

rayder
лейтенант
Сообщения: 661
Зарегистрирован: 2008-12-18 16:29:43
Откуда: Ukraine/Kiev
Контактная информация:

Re: fsbackup

Непрочитанное сообщение rayder » 2012-11-28 18:42:52

Laterport писал(а):Подскажите пожалуйста что в скрипте отвечающем за дамп баз подправить? После выполнения создаются пару файлов

- baclup_in-mysql.gz 20 байт
- backup_in-struct-mysql 0 байт

Собственно всё. Явно что-то в скрипте нужно поправить для корректного дампа баз.
почитать скрипт религия не позволяет? тем более там русским по черному написано.
Человеку свойственно ошибаться, но для нечеловеческих ляпов нужен компьютер.