|
Firebird понижение версии БД
|
|||
---|---|---|---|
#18+
Здравствуйте, понадобилось опустить версию БД FireBird с 3.0 до 2.5. Самый рабочий вариант оказался взять утилиту gbak от версии 2.5 и ей сделать копию базы 3.0 и восстановить ее на сервер 2.5. Но при ресторе получаю ошибку : ERROR:invalid request BLR at offset 8052; BLR syntax error: expected valid BLR code at offset 8053, encountered 203. При этом восстановление переносит все таблицы, а спотыкается на VIEW. Все остальные рассмотренные варианты тормозят процесс восстановление на старте и пишут : unsupported on-disk structure for file C:\MyBase.FDB; found 12.0, support 11.2. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.06.2020, 17:53 |
|
Firebird понижение версии БД
|
|||
---|---|---|---|
#18+
tarakanСамый рабочий вариант ....который не работает, ага. Значит тебе остался только один путь: создавай пустую базу из исходного скрипта и перекачивай данные, например, IBDataPump-ом. Ссылка на версию, работающую с тройкой должна быть в закреплённых темах. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
15.06.2020, 17:58 |
|
Firebird понижение версии БД
|
|||
---|---|---|---|
#18+
Спасибо за вариант, но .... мне нужно это сделать несколько раз. И каждый раз переливать данные - это будет долго... ... |
|||
:
Нравится:
Не нравится:
|
|||
15.06.2020, 18:00 |
|
Firebird понижение версии БД
|
|||
---|---|---|---|
#18+
Во-первых, не дольше, чем бэкап-ресторе. Во-вторых, это быстрее, чем писать на форуме. В-третьих, ты можешь это заскриптовать, так что на "несколько раз" хватит вызова одного батника. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
15.06.2020, 18:02 |
|
Firebird понижение версии БД
|
|||
---|---|---|---|
#18+
tarakan Здравствуйте, понадобилось опустить версию БД FireBird с 3.0 до 2.5. Самый рабочий вариант оказался взять утилиту gbak от версии 2.5 и ей сделать копию базы 3.0 и восстановить ее на сервер 2.5 tarakan Но при ресторе получаю ошибку : ERROR:invalid request BLR at offset 8052; BLR syntax error: expected valid BLR code at offset 8053, encountered 203. При этом восстановление переносит все таблицы, а спотыкается на VIEW. Затем попробуй ещё раз, можно просто бекап метаданных (ключ -m), рестор как обычно. Если получилось - повезло, можно делать нормальный бекап и потом после рестора вернуть VIEW обратно. Если не повезёт - есть более радикальный способ с созданием скрипта всех PSQL объектов (процедуры, триггеры, вьюхи, вычислимые поля и т.п.), удалением этих объектов из исходной БД, бекап\рестор как обычно и накат скрипта для пересоздания PSQL объектов. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.06.2020, 18:08 |
|
Firebird понижение версии БД
|
|||
---|---|---|---|
#18+
hvlad Замени в исходной БД тело этой VIEW на пустое с такими же полями (чтобы зависимости от неё не нарушить). Дело в том, что я не знаю на какой именно view он спотыкается, их там 32 штуки. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.06.2020, 18:11 |
|
Firebird понижение версии БД
|
|||
---|---|---|---|
#18+
tarakan hvlad Замени в исходной БД тело этой VIEW на пустое с такими же полями (чтобы зависимости от неё не нарушить). Дело в том, что я не знаю на какой именно view он спотыкается, их там 32 штуки. PS данная конкретная ошибка возникла из-за использования CASE или DECODE - для них FB3 использует новый BLR код, а FB2.х его не понимает. PPS так ли уж нужно переходить назад на 2.5 ? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.06.2020, 18:16 |
|
Firebird понижение версии БД
|
|||
---|---|---|---|
#18+
hvlad Откуда тогда известно, что дело во VIEW ? После рестора открываю БД, а в ней есть все, кроме VIEW и STORED_PROCEDURE. hvlad PPS так ли уж нужно переходить назад на 2.5 ? Да... нужно... навесили геморой... hvlad PS данная конкретная ошибка возникла из-за использования CASE или DECODE - для них FB3 использует новый BLR код, а FB2.х его не понимает А вот за это разъяснение ОГРОМНОЕ СПАСИБО. Теперь знаю где копать! ... |
|||
:
Нравится:
Не нравится:
|
|||
15.06.2020, 18:23 |
|
Firebird понижение версии БД
|
|||
---|---|---|---|
#18+
tarakan После рестора открываю БД, а в ней есть все, кроме VIEW и STORED_PROCEDURE. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.06.2020, 18:48 |
|
Firebird понижение версии БД
|
|||
---|---|---|---|
#18+
tarakan, ИМХО, 1) ibeblock (Extract Matadata from OLD_DB, Extract tables into csv file); 2) IbeScript (Recreate metadata on New_DB+Import tables from csv file); 3) В bat-файл передаете как параметр путь и имя старой и новой базы. Это максисально быстро и времени для создания скрипта понадобится около 10 минут. Попробуйте. Удачи! ... |
|||
:
Нравится:
Не нравится:
|
|||
16.06.2020, 08:34 |
|
Firebird понижение версии БД
|
|||
---|---|---|---|
#18+
Всем спасибо. Очень помогли! ... |
|||
:
Нравится:
Не нравится:
|
|||
16.06.2020, 08:41 |
|
Firebird понижение версии БД
|
|||
---|---|---|---|
#18+
hvlad tarakan Здравствуйте, понадобилось опустить версию БД FireBird с 3.0 до 2.5. Самый рабочий вариант оказался взять утилиту gbak от версии 2.5 и ей сделать копию базы 3.0 и восстановить ее на сервер 2.5 А 4.0 -> 3.0 тоже так получится? Т.е. берем gbak 3.0 подключаемся к серверу 4.0 делаем бэкап базы и потом восстанавливаем на 3.0? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2020, 12:37 |
|
|
start [/forum/topic.php?fid=40&fpage=14&tid=1560326]: |
0ms |
get settings: |
8ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
70ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
54ms |
get tp. blocked users: |
2ms |
others: | 11ms |
total: | 180ms |
0 / 0 |