Настройка bat-файлов на примерах

Перед тем, как перейти к настройке автоматического создания резервных копий, обязательно проверьте корректную работу нижеуказаных файлов: создаётся бекап, архив и восстановленная версия базы.

 1 _backup_2_5.bat - создание копии базы (.fdb -> .fbk)

set EXE_gbak="C:\Program Files (x86)\Firebird\FireBird_2_5\bin\gbak.exe"  ;путь до файла gbak.exe в папке, куда устанавливался FireBird
set EXE_rar="D:\_2_Base\_FB25\Rar.exe"                                    ;путь до файла запуска архиватора winRar

set FDB="127.0.0.1/3080:D:\_2_Base\_FB25\fitness.FDB"                     ;путь до рабочей базы
set FBK="D:\_2_Base\_FB25\autobackup\fitness.FBK"                         ;путь до файла, в который будет делаться бэкап (все папки должны быть уже созданы)
set RAR="D:\_2_Base\_FB25\autobackup\FITNESS.RAR"                         ;путь до файла с архивом бэкапа (все папки должны быть уже созданы)

if exist %FBK% del %FBK%                                                  ;удаляем предыдущий бэкап, если он имеется
%EXE_gbak%  -user "ucs" -password "ucs"   -b  %FDB% %FBK%                 ;делаем бэкап
%EXE_rar%   a -ep -ag %RAR%  %FBK%                                        ;создаём архив

 2 _restore_2_5.bat - Восстановление базы из бэкапа (.fbk -> .fdb)

Обратите внимание, что при использовании файла _restore.bat он не перезаписывает конечный файл с БД, а дополняет его, поэтому перед использованием запуском данного bat-файла нужно переименовать, переместить (рекомендуется внутри папки IBDATA создать папку OLD, куда и помещать предыдущие восстановленные из бэкапа базы), либо удалить уже имеющуюся БД с таким именем. 

set EXE_gbak="C:\Program Files (x86)\Firebird\FireBird_2_5\bin\gbak.exe"
set EXE_rar="D:\_2_Base\_FB25\Rar.exe"

set FDB="127.0.0.1/3080:D:\_2_Base\_FB25\FITNESS_TEST.FDB"
set FBK="D:\_2_Base\_FB25\autobackup\FITNESS.FBK"

set resout=resultrestore.txt
set charset=win1251

if exist %resout% del %resout%
%EXE_gbak% -c -k -p 8192 %FBK% %FDB% -user ucs -password ucs -v -y %resout%

3 _backup_2_5_EX.bat - создание архива базы в случае её повреждения.

Стоит отдельно обозначить данный вариант создания архива БД, так как он будет работать в том случае, если невозможно сделать бекап поврежденной БД обычным методом (_backup.bat)

set EXE_Gbak="C:\Program Files (x86)\Firebird\FireBird_2_5\bin\gbak.exe"
set EXE_Rar="c:\Program Files\WinRAR\Rar.exe"

set server=127.0.0.1/3080
set FDB_Dir=D:\FITNESS\_IBDATA
set FDB_Name=FITNESS

set FBK_Dir=%FDB_Dir%\autobackup
set FDB_Path=%FDB_Dir%\%FDB_Name%.FDB
set FDB="%server%:%FDB_Path%"
set FBK="%FBK_Dir%\%FDB_Name%.FBK"
set FBK_RAR="%FBK_Dir%\%FDB_Name%.RAR"
set FDB_ER="%FBK_Dir%\%FDB_Name%_ERROR.FDB"
set FDB_ER_RAR="%FBK_Dir%\%FDB_Name%_ERROR.RAR"

if exist %FBK% del %FBK%
%EXE_Gbak% -user "ucs" -password "ucs"  -b  %FDB% %FBK%
%EXE_Rar% a -ep -ag %FBK_RAR%  %FBK%

if exist %FDB_ER% del %FDB_ER% 
if not exist %FBK%  copy %FDB_Path% %FDB_ER% 
if exist %FDB_ER%  %EXE_Rar% a -ep -ag %FDB_ER_RAR% %FDB_ER%

4  restore_1_5_to_2_5.bat - используется для миграции с FireBird 1.5 на Firebird B 2.5

set backup=" C:\fitness\IBDATA\Empty\fitness.FBK"	             
set dbname="127.0.0.1/3080:C:\fitness\ IBDATA \fitness.FDB" 
set resout=resultrestore.txt
if exist %resout% del %resout%
"C:\Program Files\Firebird\FireBird_2_5\bin\gbak.exe" -c -k -p 8192 %backup% %dbname% -FIX_FSS_DATA win1251 -FIX_FSS_METADATA win1251 -user ucs -password ucs -v -y %resout%

;set backup – локальный путь к файлу fitness.FBK – backup базы;
;set dbname – путь до новой базы, начиная с IP-адреса (имени) сервера, если используем Firebird 2.5 не забываем указывать порт .