на главную страницу программы "Водяной"

Инструменты пользователя

Инструменты сайта


архив

Архивирование базы данных "Водяного"

Существует несколько способов создать копию базы:
1) скопировать файл базы, путь к которому указан при запуске программы (в нижней строке окна выбора базы данных ). Перед копированием желательно закрыть программу и остановить службу сервера Firebird (при копировании параллельно с работой, теоретически целостность копии может быть нарушена, копию следует проверить на исправность, прежде чем предпринимать дальнейшие действия).
Примечание. Файл с расширением fdb - это полные данные базы, включая лицензию. Ни в каких иных файлах данные не хранятся. Удалив или перезаписав этот файл, вы теряете все данные без возможности восстановления!
2) создать архивный файл формата fbk непосредственно из программы (запущенной на основной машине, где хранится база данных), выбрав сервис - создать архив. Важное примечание: архив создается утилитой gbak в отдельном процессе, поэтому копировать его сразу после получения сообщения об архивировании нельзя, подождите несколько минут до копирования или отправки полученного файла.
3) непосредственно утилитой gbak из командной строки, выполнив команды примерно следующего содержания (пути к базе надо менять по аналогии с п.1) :

cd c:\Program Files\Firebird\Firebird_2_5\bin   
gbak -b "C:\Program Files\ctex\voda\base\voda1.fdb" "c:\arhiv\vod.fbk" -user SYSDBA -pass masterkey

Настройка автоматического архивирования

Архивирование базы выполняется с помощью утилиты gbak, входящей в состав Firebird.
Чтобы оно делалось автоматически, следует:
1) создать bat-файл примерно следующего содержания:

set CURDATE=%DATE%
set CURTIME=%TIME%
set Y=%CURDATE:~6,4%
set M=%CURDATE:~3,2%
set D=%CURDATE:~0,2%
set H=%CURTIME:~0,2%
set MIN=%CURTIME:~3,2%
set S=%CURTIME:~6,2%
path "c:\Program Files\Firebird\Firebird_2_5\bin"
gbak -b "C:\Program Files\ctex\voda\base\voda1.fdb" "c:\arhiv\vod.fbk" -user SYSDBA -pass masterkey
copy "c:\arhiv\vod.fbk" "c:\arhiv\%Y%%M%%D%_%H%%MIN%%S%vod.fbk" 

Скачать bat-файл для создания архива

В приведенном примере может потребоваться изменить:
«C:\Program Files\ctex\voda\base\voda1.fdb» – путь базы данных, которую архивируем (этот путь написан в нижней строке окна запуска программы при выборе требуемой базы).
«c:\arhiv» - путь к каталогу архива по умолчанию, если хочется архивировать данные на другом ПК или в иной папке, измените этот путь на свой. Папка должна существовать и быть доступна для записи.
SYSDBA и masterkey - имя и пароль пользователя СУБД по умолчанию, если вы их изменили, замените и в bat-файле.
2) Запланировать запуск файла в планировщике заданий Windows. Например, в Windows 7: Панель управления - Администрирование - Планировщик заданий. В планировщике выбрать «создать задачу», указать «выполнить с наивысшими правами, затем на закладке «триггеры» выбрать «создать» и указать желаемое расписание, например, ежедневно, в 23-00. После этого нажимаем «создать» на вкладке «Действия», выбираем «запуск программы», затем «Обзор» и выбираем файл из п.1. Последний шаг - нажимаем ОК для создания задачи.
Если всё сделано правильно, в папке c:\arhiv будут собираться файлы с именами вида 20120402_170426vod.fbk, где 20120402 обозначает 2 апреля 2012 года, а 170426 - время создания (17:04:26).

Отправка архива на Яндекс-диск

С помощью широко известной утилиты curl можно созданный архив отправлять в облачное хранилище, позволяющее копировать HTTP-запросом, например, на яндекс-диск папку curl надо внутри папки с bat-файлом для архивирования.
К приведенному выше файлу следует добавить строки:

cd curl\bin
curl -T "c:\arhiv\vod.fbk" https://webdav.yandex.ru/vod.fbk --user имя:пароль

подставив свои имя и пароль.

Восстановление базы из архива

Для восстановления из архива создайте файл vosst.bat, в котором должны быть 2 следующие строки:

path "C:\Program Files\FireBird\FireBird_2_5\bin\"
gbak -c %1 vosst.fdb -user SYSDBA -pass masterkey -p 16384

Примечание: путь, имя пользователя и пароль могут отличаться при индивидуальной настройке, но подходят для большинства установок.
После этого можно будет восстановить архив, выполнив команду vosst имя_архива.fbk, где имя_архива.fbk - тот архив, который вы хотите развернуть. В результате в папке должен появиться файл vosst.fdb, который можно переименовать и добавить в список баз программы.
Важно: никогда не заменяйте файл рабочей базы на vosst.fdb, даже если база неисправна. Сначала переименуйте рабочий файл базы или перенесите его в другую папку, а затем уже vosst.fdb присвойте имя рабочей базы (например, voda1.fdb).

Рекомендации по архивированию базы

Если загрузка сервера позволяет и не заметны потери производительности, желательно настроить сохранение базы несколько раз в день. Разумеется, повреждение базы - довольно маловероятное событие, но если вдруг оно произойдет, наличие свежих копий сведет потери времени и нервов к минимуму.
При использовании выделенного сервера его диски должны быть зеркалированы (объединены в RAID массив).
Архивирование желательно проводить, сохраняя копию на другой компьютер или внешний носитель - в случае физического повреждения, кражи или изъятия сервера вы не потеряете доступа к ним.

Архивирование/восстановление с помощью IBExpert

Для разовой ручной операции (а также для любых запросов к базе, мониторинга и проч.) можно воспользоваться замечательной программой IBExpert.

Соответствующие функции (backup и restore) находятся в меню «службы».

вопросы администрирования баз

архив.txt · Последние изменения: 2023/01/08 13:24 — timofeev