Задача: попытаться восстановить базу данных Firebird (сервер под Windows).
Для решения этой проблемы воспользуемся утилитами gfix и gbak, поставляемыми в комплекте с сервером Firebird. Напишите батник (bat-файл) со следующим содержимым внутри:
@echo off
rem Подготавливаем базу к восстановлению
gfix.exe -mend -user SYSDBA -pas masterkey server:c:\db\mybase.gdb
rem Делаем дамп базы в другой файл
gbak.exe -b -g -user SYSDBA -pas masterkey server:c:\db\mybase.gdb c:\db\backup\mybase.bak
rem Сохраняем на всякий случай оригинальный файл базы - это еще поврежденный файл
rename c:\db\mybase.gdb c:\db\mybase.orig
rem Теперь восстанавливаем базу
gbak.exe -user SYSDBA -pas masterkey C:\db\backup\mybase.bak server:c:\db\mybase.gdb
Здесь:
-pas masterkey - рутовый пароль
C:\db\mybase.gdb - это наша поврежденная база
C:\db\backup - папка, куда можно ложить бекапы баз (убедитесь, что создаваемый бамп не заменить рабочий бекап, если он есть!)
Если повреждения не серьезные - такая операция почекает косяки и вернет базу к жизни.
Актуально для: Windows + Firebird
Комментарии
Оставить комментарий
Базы данных - MySql (Maria DB)
Термины: Базы данных - MySql (Maria DB)