Задача:
Перенести базу с Linux сервера на windows.
Имеем:
Firebird под linux, Firebird под Windows – установлены и запущены.
Делаем:
1. Делаем бэкап
По-правильному бэкап нужно делать каждый день. У меня это делает скрипт по крону еженочно. Сам скрипт не только делает бэкап, но и копирует базу на другие компьютеры.
Итак. Бэкап делается следущим скриптом:
#!/bin/sh
GBAK=/opt/firebird/bin/gbak
PASSWD=slavelock
USR=SYSDBA
BASEDIR=/opt/firebird/
BASEFILE=sw4.gdb
BKPDIR=/opt/firebird/backup/base/
BKPSUFFIX=`date +”.%Y.%m.%d.%H.%M.%S”`
$GBAK -B -CO -T -USER $USR -PAS $PASSWD $BASEDIR$BASEFILE $BKPDIR$BASEFILE$BKPSUFFIX
В итоге получаем файл бэкапа: /opt/firebird/backup/base/sw4.gdb.год.месц.день.час.минуты.секунды
Параметры gbak можно посмотреть вызвав программу так: ./gback –help.
Перед запуском скрипта не забудьте задать атрибут на запуск.
2. Восстанвливаем базу:
Имеем файл sw4.gdb.2006.10.31.01.00.00.bz2. Это бэкап базы запакованный bzip2. Распаковывать такие архивы умеет гуевый WinRar. Распаковываем и получаем: sw4.gdb.2006.10.31.01.00.00 (Дело в том, что я не меняю расширений на gbk, возможно так неправильно, но мне так удобно =). Переименуем для удобства в sw4.gbk. Идем в “C:\Program Files\Firebird\Bin” (где у Вас установлен Firebird). Там нам потребуется программа gbak.exe. Запускаем на восстановление: gbak.exe -c -user sysdba -pas Ваш_пароль -use_all_space E:\Frigat\sw4.gbk E:\Frigat\sw4.30_.gdb
В итоге у нас появиться база sw4.30_.gdb.
Популярность: 19%
ROM
RSS Записей
Поддержи сайт!

