Backup/restore базы данных

Процесс backup/restore базы данных Firebird чем-то похож на дефрагментацию жесткого диска. Данные в файле базы дефрагментируются и наводится еще некоторый порядок. Полезно периодически дефрагментировать базу.

Еще данная дефрагментация помогает при ошибке «unsuccessful metadata update TABLE TBLXX too many versions». Ошибка появляется, когда какой-то объект системы был изменен 256 раз. Под изменением понимается добавление/удаление поля в объект. Так уж устроена база Firebird. Чтобы сбросить эти счетчики, надо провести backup/restore базы Firebird.

Также этот процесс нужен для переноса базы из одной версии Furebird в другую.

Процесс дефрагментации базы происходит в два этапа:

  1. Сначала происходит backup в другой файл (base.fbk).
  2. Затем из backup-а база восстанавливается в прежний файл (base.fdb), затирая его.

Чтобы провести backup/restore базы сделайте следующее:

  1. Сохраните на всякий случай вашу базу в надежное место. Чтобы в случае чего можно было вернуть старую базу.
  2. Установите Firebird нужной версии.
  3. Создайте папку на рабочем столе, разархивируйте в нее файл BackupRestore.zip и вашу базу. Подправьте файл BackupRestore.bat, указав в нем корректный путь к файлу gbak.exe. Этот файл находится в папке Firebird.
  4. Запустите файл BackupRestore.bat.

Если у вас все получилось как на скриншоте ниже, то значить операция прошла успешно и можете переместить дефрагментированную базу на прежнее место.