Ситуация следующая:
fb 1.5
Есть только бекап. Индекс в нем поврежден. Восстановление с деактивированием индекса не помогает, вернее не совсем. Не могут восстановиться процедуры, т.к. одна использует план по этому индексу. Вот что пишет виндовый fb-сервер при восстановлении:
...
gbak: restoring privilege for user TWUSER
gbak: restoring privilege for user TWUSER
gbak: restoring privilege for user TWUSER
IBE: index cannot be used in the specified plan
.
index NAB_IC1D1 cannot be used in the specified plan.
IBE: Restore completed. Current time: 12:24:19. Elapsed time: 00:00:05
В результате БД восстанавливается, но нет ни одного триггера, ни одной процедуры.
Есть ли какая-нибудь возможность восстановить без перекомпиляции процедур чтоли или какой-нибудь другой вариант? Заранее спасибо.
Поврежденный индекс в бекапе
Модераторы: kdv, Alexey Kovyazin
никаких индексов в бэкапе нет. есть только их описания.Есть только бекап. Индекс в нем поврежден.
причина проблемы - указание плана запроса в процедуре.index NAB_IC1D1 cannot be used in the specified plan.
при restore для отслеживания зависимостей процедуры препарируются в памяти, а значит строятся новые планы. и, судя по всему, план указан некорректный.
какой именно FB? то есть, какая версия 1.5 из пяти?Есть ли какая-нибудь возможность восстановить без перекомпиляции процедур чтоли или какой-нибудь другой вариант?
могу порекомендовать IBBackupSurgeon, но это платный инструмент. Т.е. можно купить, и восстановить все что угодно.