Эта страница переведена машинным переводом. Читайте английский оригинал. English

Библиотека IBSurgeon

Как восстановить поврежденную базу данных Firebird?

Alexey Kovyazin, последнее обновление 28 марта 2014 года

Если база данных Firebird повреждена, пожалуйста, выполните следующие шаги для её восстановления:

  1. Остановите сервер Firebird (в Windows он обычно работает как служба, поэтому откройте Панель управления, запустите апплет “Службы” и остановите “Firebird Server - Default Instance”). Не используйте повреждённую базу данных - это приведёт к дальнейшему повреждению. Также не копируйте базу данных Firebird, пока сервер Firebird запущен - это приведёт к повреждению копии, а иногда и к повреждению исходной базы данных.
  2. Сделайте копию файла базы данных Firebird - обычно это один файл с расширением fdb или gdb, и когда служба Firebird остановлена, безопасно копировать файл базы данных обычной командой копирования или через Проводник Windows. Всегда сохраняйте оригинальную копию повреждённой базы данных Firebird для возможного использования в будущем!
  3. Запустите сервер Firebird и выполните следующие команды в командной строке из папки Firebird\Bin (обычно инструменты gfix и gbak находятся в Program Files\Firebird\Firebird_2.5.in):
Code
gfix.exe -v -full -user SYSDBA -pass masterkey path_to_your_database
gfix.exe -mend -ig -user SYSDBA -pass masterkey path_to_your_database
gbak -b -g -v -user SYSDBA -pass masterkey path_to_your_database path_to_backup

Попробуйте выполнить их все, даже если gfix показывает ошибки.

  1. Если резервное копирование завершилось успешно, восстановите базу данных:
Code
gbak -c -v -user SYSDBA -pass masterkey path_to_backup path_to_database
  1. Если gbak не сработал, скачайте FirstAID Diagnostician, установите его и запустите Диагностику на оригинальной повреждённой базе данных. Подробнее см. на странице продукта FirstAID. Отправьте полный текст ошибки (или скриншот) и журнал диагностики в службу поддержки IBSurgeon [email protected].

Инструменты восстановления IBSurgeon

Мы предлагаем инструмент FirstAID для автоматического восстановления базы данных, который (в сочетании со стандартными gfix и gbak) позволяет исправить до 95% наиболее распространённых повреждений баз данных Firebird и InterBase.

Если полная версия FirstAID не сможет устранить повреждение базы данных, мы предлагаем 2 часа бесплатной поддержки по восстановлению для решения этой проблемы.

Для получения дополнительной информации обращайтесь в службу поддержки IBSurgeon: [email protected].