Страница 1 из 1
Проблема при ресторе с 1.5.6 на 2.1.3
Добавлено: 05 авг 2010, 10:41
nevadimka
При попытке восстановить базу с бэкапа 1.5.6 версии на 2.1.3 версию FireBird выдает ошибку: gbak: ERROR:index PK_blablabla cannot be used in the specified plan gbak:Exiting before completion due to errors При этом рестор на 1.5.6 идет нормально.
Как устранить такую проблему не создавая новый бэкап?
Re: Проблема при ресторе с 1.5.6 на 2.1.3
Добавлено: 05 авг 2010, 13:53
Dimitry Sibiryakov
-NO_VALIDITY может помочь. Но прибитый гвоздиками план придётся потом убить.
Re: Проблема при ресторе с 1.5.6 на 2.1.3
Добавлено: 14 дек 2010, 10:40
nevadimka
ну да сейчас делаем так: перед переходом делаем накат метаданных на пустую базу, находим процедуры с некорректным планом, коментируем фиксим после перехода.
С переходом на 2.1.3 есть еще одна проблема при ресторе:
gbak: ERROR:value exceeds the range for valid dates
gbak: ERROR:gds_$send failed
gbak:Exiting before completion due to errors
База большая со множеством таблиц в которых есть даты. Может кто-то посоветует быстрый способ сделать даты корректными или рестор прошел
Re: Проблема при ресторе с 1.5.6 на 2.1.3
Добавлено: 14 дек 2010, 14:43
kdv
разве что select cast(datefield as varchar(20)) from ...
и то, не знаю, что даст у вас эта проверка.
Re: Проблема при ресторе с 1.5.6 на 2.1.3
Добавлено: 15 дек 2010, 12:48
nevadimka
Апдейт поля типа DATE в таблице, на которой упало, помог. Но при ресторе упало с такой же ошибкой, но на другой таблице.
На сколько я понял определить, что дата не в таком формате нельзя.
Как выход вижу через системные таблицы вытянуть все поля типа date и через execute statement их проапдейтить.
Или может вы что-то посоветуете?
Вариант создать пустую базу на 2.1.3 и перезалить данные рассматриваю в последнюю очередь.
Re: Проблема при ресторе с 1.5.6 на 2.1.3
Добавлено: 15 дек 2010, 14:42
Dimitry Sibiryakov
nevadimka писал(а):Вариант создать пустую базу на 2.1.3 и перезалить данные рассматриваю в последнюю очередь.
А зря. Это самый быстрый способ.
Re: Проблема при ресторе с 1.5.6 на 2.1.3
Добавлено: 16 дек 2010, 12:33
nevadimka
Просто апдейт можно запустить на выходные и пойти домой, а потом сделать бекап/рестор и перейти на новую версию.
Процесс переливки все же нада контролировать, хотя тоже можно запустить и уйти домой, а если что-то упадет, то наследующие выходные попробовать снова.
Может подскажите сколько времени займет переливка по SUSE бд размером 100ГБ, правда не знаю какой % от этого индексы, но вроде большой?
Re: Проблема при ресторе с 1.5.6 на 2.1.3
Добавлено: 16 дек 2010, 14:37
Dimitry Sibiryakov
Семь часов максимум. Это если все 100 гигабайт - данные.