Форум: "Прочее";
Текущий архив: 2006.04.30;
Скачать: [xml.tar.bz2];
ВнизАвтоматический BackUp базы Firebird 1.5 Найти похожие ветки
← →
DelphiN! © (2006-04-06 12:37) [0]Хотел бы поинтересоваться, есть ли в FireBird встроенная возможность автоматического BackUp-a базы данных, либо же нужно писать отдельную программку для автоматического бэкапа БД?
← →
Vovchik_A © (2006-04-06 12:41) [1]Шедулер+gbak.exe ?
← →
DelphiN! © (2006-04-06 12:57) [2]
> [1] Vovchik_A © (06.04.06 12:41)
Что за Шедулер?
← →
DelphiN! © (2006-04-06 13:03) [3]Все, дошло, спасибо!
← →
WondeRu © (2006-04-06 13:20) [4]http://trevog.net/forum/viewtopic.php?t=6
← →
DelphiN! © (2006-04-06 13:52) [5]А как узнать успешно ли gbak завершил бэкап базы или нет, желательно узнать это без своих программ, а посредством комманд, доступных в BAT файлах
← →
Vovchik_A © (2006-04-06 14:03) [6]А он по окончании пишет - gbak: closing file, committing, and finishing.
Ты что хочешь делать, собственно ?
← →
McSimm © (2006-04-06 14:03) [7]Эх, насколько я помню свои страдания - главный вопрос не в том, успешно ли бэкап выполнился, а в том, возможно ли этот бэкап будет потом поднять.
Причины так тогда и не понял, но периодически мой автобэкап успешно генерировал нечто невосстанавливаемое никакими плясками.
← →
Игорь Шевченко © (2006-04-06 14:07) [8]
> А как узнать успешно ли gbak завершил бэкап базы или нет
А по Exit code ?
← →
DelphiN! © (2006-04-06 14:11) [9][6] Vovchik_A © (06.04.06 14:03)
Нужно бэкапить базу во временный файл, и так как бэкап проходит с удаленного компьютера, необходимо проверять, успешно ли прошел бэкап или нет, сетка просто у нас беспроводная и соединение частенько рвется, а далее если бэкап прошел успешно, удалять предыдущий файл и переиминовывать временный файл бэкапа в нормальное "бэкапное" имя удаленного ...
> [7] McSimm © (06.04.06 14:03)
Похоже придется хранить бэкапы за несколько дней, один до рабочим окажется .. :)
← →
Vovchik_A © (2006-04-06 14:11) [10]2McSimm © (06.04.06 14:03) [7]
Кстати, странно. У меня за 3 года - нет проблем никаких. Восстанавливается - как дети в школу.
← →
DelphiN! © (2006-04-06 14:12) [11]
> [8] Игорь Шевченко © (06.04.06 14:07)
А как его проверить в BAT файле, просто не охото отдельную программку для этого писать ...
← →
Vovchik_A © (2006-04-06 14:18) [12]2DelphiN! © (06.04.06 14:11) [9]
> Нужно бэкапить базу во временный файл
Время/дату, например, слабо в имени бекапа использовать ?
> удалять предыдущий файл
не надо
← →
Джо © (2006-04-06 14:22) [13]В бат-файле можно использовать IF и ERRORLEVEL (это как раз код возврата), синтаксис.
if [not] errorlevel number command [else expression]
ERRORLEVEL — Specifies a true condition only if the previous program run by Cmd.exe returned an exit code equal to or greater than number.
Вообще, смотри стандартную справку, входящую в Windows. В частности, по IF.
← →
unknown © (2006-04-06 14:34) [14]Вот пример бат файла
http://www.firebirdsql.org/download.php?op=file&id=nightly.txt
он для сарого IB, надо немного модифицировать и все.
← →
Бугага © (2006-04-06 14:38) [15]А почему нельзя воспользоваться например методами FIBPlus"a?
← →
jack128 © (2006-04-06 15:00) [16]Vovchik_A © (06.04.06 14:11) [10]
Восстанавливается - как дети в школу
тебе повезло. Существует 400 сравнительно честных способов сделать бекап невосстоновимым ;-)
← →
McSimm © (2006-04-06 15:10) [17]Ага, причем некоторые из этих 400 способов используются программой IBExperts :)
Так что если вы пользуетесь этой замечательной(без иронии) программой, желательно хорошо представлять себе что и каким способом она выполняет.
← →
DelphiN! © (2006-04-06 15:31) [18]Написал батник примерно следующим образом :
C:\Progra~1\Firebird\Firebird_1_5\bin\gbak.exe -b 127.0.0.1:C:\BASE1.FDB D:\BASE_BACKUPS\TEMP.FBK -pas masterkey -user SYSDBA
echo error code: %ERRORLEVEL%
if ERRORLEVEL 0 GOTO Om1
END_OM1:
:Om1
echo OK
GOTO END_B
...
:END_B
Почему то условие ERRORLEVEL 0 всегда истина(даже когда ERRORLEVEL не равен 0) и всегда производится переход на метку Om1
Почему?
← →
Джо © (2006-04-06 15:33) [19]> [18] DelphiN! © (06.04.06 15:31)
> Почему то условие ERRORLEVEL 0 всегда истина(даже когда
> ERRORLEVEL не равен 0) и всегда производится переход на
> метку Om1
Смотри [13], а еще лучше стандартную справку Windows.
← →
wal © (2006-04-06 15:35) [20]
> [18] DelphiN! © (06.04.06 15:31)
ERRORLEVEL число Условие является истинным, если код возврата последней выполненной программы не меньше указанного числа.
← →
DelphiN! © (2006-04-06 15:39) [21]Спасибо всем, работает!
Страницы: 1 вся ветка
Форум: "Прочее";
Текущий архив: 2006.04.30;
Скачать: [xml.tar.bz2];
Память: 0.49 MB
Время: 0.011 c