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

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

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


архив

Это старая версия документа!


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

Существует несколько способов создать копию базы:
1) скопировать файл базы, путь к которому указан при запуске программы (в нижней строке окна выбора базы данных ). Перед копированием следует закрыть программу и остановить службу сервера Firebird (при копировании и параллельно с работой, целостность копии не может гарантироваться, сделанную копию следует проверить на исправность, прежде чем предпринимать дальнейшие действия).
2) создать архивный файл формата fbk непосредственно из программы (запущенной на основной машине, где хранится база данных), выбрав сервис - создать архив. Важное примечание: архив создается утилитой gbak в отдельном процессе, поэтому копировать его сразу после получения сообщения об архивировании нельзя, подождите несколько минут до копирования или отправки полученного файла.
3) непосредственно утилитой gbak из командной строки, выполнив команды примерно следующего содержания (пути к базе надо менять по аналогии с п.1) :
cd c:\Program Files\Firebird\Firebird\bin gbak -b «C:\Program Files\ctex\voda\base\voda1.fdb» «c:\Program Files\ctex\voda\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\bin»
gbak -b «C:\Program Files\ctex\voda\base\voda1.fdb» «c:\Program Files\ctex\voda\arhiv\vod.fbk» -user SYSDBA -pass masterkey
copy «c:\Program Files\ctex\voda\arhiv\vod.fbk» «c:\Program Files\ctex\voda\arhiv\%YMD%_%HMINS%vod.fbk»

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

Отправка архива на электронную почту

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

blat.exe -server smtp.yandex.ru -f ЭЛ.ПОЧТА -u ИМЯ ПОЛЬЗОВАТЕЛЯ ЭЛ.ПОЧТЫ -pw ПАРОЛЬ ЭЛ. ПОЧТЫ -to ЭЛ.ПОЧТА -subject arhiv%YMD% -body «arhiv vodjanogo» -attach vod.fbk

Файлы blat.exe и blat.dll надо разместить рядом с bat-файлом для архивирования.

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

Для восстановления из архива создайте файл vosst.bat, в котором должны быть 2 следующие строки:
path «C:\Program Files\FireBird\FireBird_2_5\bin\»
gbak -c %1 vosst.fdb -user SYSDBA -pass masterkey
Примечание: путь, имя пользователя и пароль могут отличаться при индивидуальной настройке, но подходят для большинства установок.
После этого можно будет восстановить архив, выполнив команду vosst имя_архива.fbk, где имя_архива.fbk - тот архив, который вы хотите развернуть. В результате в папке должен появиться файл vosst.fdb, который можно переименовать и добавить в список баз программы.
Важно: никогда не заменяйте файл рабочей базы на vosst.fdb, даже если база неисправна. Сначала переименуйте рабочий файл базы или перенесите его в другую папку, а затем уже vosst.fdb присвойте имя рабочей базы (например, voda1.fdb).

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

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

архив.1567001473.txt.gz · Последние изменения: 2019/08/28 17:11 — timofeev