Сегодня 16 ноября, суббота ГлавнаяНовостиО проектеЛичный кабинетПомощьКонтакты Сделать стартовойКарта сайтаНаписать администрации
Поиск по сайту
 
Ваше мнение
Какой рейтинг вас больше интересует?
 
 
 
 
 
Проголосовало: 7276
Кнопка
BlogRider.ru - Каталог блогов Рунета
получить код
Pitstopper'z Notez
Pitstopper'z Notez
Голосов: 1
Адрес блога: http://my.opera.com/Pitstopper/
Добавлен: 2009-07-09 12:48:03
 

Чиним базы данных Interbase и Firebird

2010-08-14 11:08:38 (читать в оригинале)

Итак, у Вас "упала" БД. Приступаем к быстрой "реанимации". Предупреждаю лишь о том, что данные советы могут не помочь при большом количестве ошибок в БД.

1. Для ремонта баз данных рекомендуется использовать именно утилиту командной строки gfix. Повреждения баз данных могут быть исправлены как при помощи только gfix, так и одновременно gfix и gbak. Делаем копию БД, ибо с оригиналом работать небезопасно. При копировании Вы должны быть уверены, что в БД никто не работает в данный момент;

2. Проверяем БД на наличие повреждений. Для этого открываем командную строку (либо консоль *nix), переходим в директорию с БД и выполняем:
gbak.exe (или ./gbak в *nix) -v -full -user SYSDBA -pass masterkey database.gdb

3.Если выдаются ошибки "checksum error", выполняем команду:
gfix.exe -v -ignore -user SYSDBA -pass masterkey database.gdb

4.Если предыдущая команда обнаружила ошибки, их необходимо исправить командой:
gfix.exe -mend -user SYSDBA -pass masterkey database.gdb

5.Проверяем:
gfix.exe -v -full -user SYSDBA -pass masterkey database.gdb

6.Если на данный момент все еще есть ошибки, надо попытаться сделать бэкап, отключив при этом сборку "мусора" (ключ -g):
gbak.exe -b -v -ig -g -user SYSDBA -pass masterkey database.gdb database.gbk
Ключ -ig игнорирует ошибки при чтении структур данных, пытаясь сохранить в бэкап все неповрежденные структуры и данные;

7. Теперь пытаемся восстановить базу данных:
gbak.exe -c -r -v -user SYSDBA -pass masterkey database.gbk new_database.gdb

8. Если же все-таки не получилось нормально "свернуть-развернуть" БД, но доступ к ней есть, можно попробовать утилитой IBPump скопировать хотя бы часть данных.

Более подробная информация здесь.

Тэги: firebird, gbak, gfix, interbase

 


Самый-самый блог
Блогер ЖЖ все стерпит
ЖЖ все стерпит
по количеству голосов (152) в категории «Истории»


Загрузка...Загрузка...
BlogRider.ru не имеет отношения к публикуемым в записях блогов материалам. Все записи
взяты из открытых общедоступных источников и являются собственностью их авторов.