Восстановление поврежденной базы данных Firebird

В одной из программ (Суперокна), работающих на СУБД FireBird стала возникать ошибка: BLOB NOT FOUND. Тестирование и исправление встроенными средствами программы результата не дало. Пришлось воспользоваться утилитами Firebird gfix.exe (проверка и исправление ошибок) и gbak.exe  (создание и восстановление из резервной копии).

Как восстановить поврежденную БД Firebird

  1. Выключаем сервер Firebird. Для этого останавливаем службу Firebird Server
  2. Копируем нужный файл базы данных. Лучше временно скопировать файл в папку с установленным Firebird. В моем случае это была папка C:\Program Files\Firebird\Bin
  3. Включаем сервер Firebird
  4. Запускаем командную строку с правами администратора. и переходим в папку с установленным Firebird (при помощи команды cd Имя папки)
  5. Проверяем базу данных на повреждения
    gfix.exe -v -full -user sysdba -password masterkey base.fdb

  6. В параметре -user указываем имя пользователя БД , а в параметре –password пароль пользователя. Эти параметры нужно указывать для всех команд по восстановлению БД

  7. Если в отчете есть ошибки, то исправляем их командой
    gfix.exe –mend -user sysdba -password masterkey base.fdb

  8. Повторно проверяем на повреждения базу данных
    gfix.exe -v -full -user sysdba -password masterkey base.fdb

  9. Если ошибки сохранились то делаем резервную копию БД 
    gbak -b -v -ig -g  -user sysdba -password masterkey base.fdb backup.fbk

    Основные параметры:

    base.fdb – поврежденный файл базы данных
    backup.fbk – файл резервной копии

    -ig – ошибки контрольных сумм будут игнорироваться
    -g – запрет сборки мусора во время резервирования

  10. Восстанавливаем  базу данных из резервной копии
    gbak -c -v -user sysdba -password masterkey backup.fbk newbase.fdb

  11. Проверяем новую базу на ошибки

После проделанных операций удалось восстановить работу базы данных Firebird и избавиться от ошибки BLOB NOT FOUND.

Поделиться ссылкой:

Похожие записи

Восстановление поврежденной базы данных Firebird

Добавить комментарий

Ваш адрес email не будет опубликован.