Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.04.30;
Скачать: CL | DM;

Вниз

Автоматический 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;
Скачать: CL | DM;

Наверх




Память: 0.51 MB
Время: 0.026 c
15-1144472265
balepa
2006-04-08 08:57
2006.04.30
"Извлечение" мелодии из MP3


8-1133099582
Arazel
2005-11-27 16:53
2006.04.30
Конвертировать Mp3 в Wav (IMA ADPCM 16/4/7)?


15-1144337624
Winston [BGMD]
2006-04-06 19:33
2006.04.30
Экспорт в dll


11-1125470568
MTsv DN
2005-08-31 10:42
2006.04.30
Как получить ComboBox без кнопки?


2-1144760457
ANB
2006-04-11 17:00
2006.04.30
Как в Ворде заменить кусочек параграфа ?