Гость
Форумы / IBExpert [игнор отключен] [закрыт для гостей] / Перенос БД с Windows (86x) на Windows (64x) / 25 сообщений из 52, страница 1 из 3
10.10.2015, 11:22
    #39073451
Konstantin-78
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос БД с Windows (86x) на Windows (64x)
Доброе время суток, форумчане,

У меня сейчас стоит Windows (64x), и FireBird 2.5.4.26856_0 с помощью IBExpert 2011.11.05, при соединении с БД, ошибка:
Код: sql
1.
2.
«Connection authorization failure.
file D:\....gdb is not a valid database»


Ранее у меня была Windows (86x), и на ней (на виртуалке), IBExpert соединяется.
Я захотел перенести с (86х) на (64х) с помощью Backup/Restore.
На (86х) я сделал с помощью IBExpert, backup (в отчете таблицы в файл попали), а вот при restore, в отчет вывелось исключение:

Код: sql
1.
2.
3.
4.
5.
6.
…
gbak:restoring domain RDB$8 
IBE: Unsuccessful execution caused by system error that does not preclude successful execution of subsequent statements.
     Invalid metadata detected. Use -FIX_FSS_METADATA option.
     Malformed string.
     Exiting before completion due to errors.



Искал в IBExpert данную опцию, не нашел…
Кто что может посоветовать?
А может это вообще не с этим связано…

Заранее спасибо.
...
Рейтинг: 0 / 0
10.10.2015, 12:14
    #39073475
Gallemar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос БД с Windows (86x) на Windows (64x)
Konstantin-78,
...
Рейтинг: 0 / 0
10.10.2015, 12:17
    #39073477
Gallemar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос БД с Windows (86x) на Windows (64x)
А вообще разницы нет между какими системами ты делаешь перенос,если используешь формат "Transportable"
...
Рейтинг: 0 / 0
10.10.2015, 12:38
    #39073489
miwaonline
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос БД с Windows (86x) на Windows (64x)
Konstantin-78,

1. Ты забыл указать версию FB на Win x86. А там она, я так думаю, была ниразу не 2.5.Х.Х.

2. Почему такой старый IBExpert?

3. После ответа на вопрос (1) можно будет почитать о переходе с версии 2.1 на 2.5. Там везде пишут о том как и где использовать fix_fss_metadata.
...
Рейтинг: 0 / 0
10.10.2015, 12:40
    #39073491
miwaonline
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос БД с Windows (86x) на Windows (64x)
GallemarА вообще разницы нет между какими системами ты делаешь перенос,если используешь формат "Transportable"
Transportable - это для перехода между little-endian/big-endian, если я все правильно путаю. Для перехода между версиями и/или между ОСями серверов она не нужна.
...
Рейтинг: 0 / 0
10.10.2015, 16:32
    #39073560
Konstantin-78
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос БД с Windows (86x) на Windows (64x)
miwaonline,

- Версия FB 2.5.4.26856 - это на (86х и на 64х).
- IBExpert - я сейчас поменяю на версию - 2015.09.28
...
Рейтинг: 0 / 0
10.10.2015, 17:15
    #39073574
Konstantin-78
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос БД с Windows (86x) на Windows (64x)
ну, вообщем заменил IBExpert на 2015.6.17.1

поставил установки как привел на рис. "Gallemar", за исключением "Client Library File", он у меня - "gds32.dll",

провел restore, ошибка НЕ ушла :-(
...
Рейтинг: 0 / 0
10.10.2015, 18:01
    #39073590
miwaonline
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос БД с Windows (86x) на Windows (64x)
Konstantin-78- Версия FB 2.5.4.26856 - это на (86х и на 64х).
Кто и главное как делал переход с 2.1 на 2.5?
Если в коммандной строке сделать
%firebird%\bin\gfix.exe -v- user sysdba -pass masterkey d:\...fdb
где %firebird% - путь к установленному ФБ, то что выдается в ответ?

P.S. Тема IBExpert не касается, проблема исключительно FB-шная.
...
Рейтинг: 0 / 0
10.10.2015, 18:02
    #39073591
miwaonline
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос БД с Windows (86x) на Windows (64x)
miwaonline%firebird%\bin\gfix.exe -v- user sysdba -pass masterkey d:\...fdb
Очепятался.

%firebird%\bin\gfix.exe -v -user sysdba -pass masterkey d:\...fdb
...
Рейтинг: 0 / 0
10.10.2015, 18:17
    #39073597
Konstantin-78
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос БД с Windows (86x) на Windows (64x)
miwaonline,

Если честно, я не помню чтоб запускал эту БД уже на Window 8.1, с FB 2.5.
Но на windows XP c FB 2.5.4.26856 она сейчас соединяется.

На командную строку приведенную Вами, она отвечает:
Код: sql
1.
«file D:\....gdb is not a valid database».
...
Рейтинг: 0 / 0
10.10.2015, 18:26
    #39073604
Konstantin-78
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос БД с Windows (86x) на Windows (64x)
В сухом остатке получается, что у меня разные ОС, и из-за этого у меня такая фигня :-(
Бред какой-то
...
Рейтинг: 0 / 0
10.10.2015, 18:34
    #39073609
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос БД с Windows (86x) на Windows (64x)
Фигня у тебя потому что ты непонятно какую фигню сделал. Телепаю, что ты сделал бэкап в файл D:\....gdb, а теперь пытаешься к нему подключиться как к базе, без восстановления.
...
Рейтинг: 0 / 0
10.10.2015, 18:49
    #39073612
Konstantin-78
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос БД с Windows (86x) на Windows (64x)
Dimitry Sibiryakov,

подождите, файл " *.gdb " - это файл БД. файлы бэкапы: "*.fbk, *.gbk".
Который работает на (86х)
...
Рейтинг: 0 / 0
10.10.2015, 19:20
    #39073622
miwaonline
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос БД с Windows (86x) на Windows (64x)
Konstantin-78подождите, файл " *.gdb " - это файл БД. файлы бэкапы: "*.fbk, *.gbk".
Который работает на (86х)
Вот процитированное - точно фигня. Три последние буквы названия файла базы данных для сервера вообще ничего не значат. Там хоть .doc может быть, лишь бы база была валидной.

Konstantin-78Но на windows XP c FB 2.5.4.26856 она сейчас соединяется.

На командную строку приведенную Вами, она отвечает:
Значит, присоединяется программа к одной базе данных, а скопировать ты пытаешься другую. Пересмотри и перепроверь наново все настройки, которые касаются базы данных в используемом софте.
...
Рейтинг: 0 / 0
10.10.2015, 19:44
    #39073628
Konstantin-78
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос БД с Windows (86x) на Windows (64x)
miwaonlineKonstantin-78подождите, файл " *.gdb " - это файл БД. файлы бэкапы: "*.fbk, *.gbk".
Который работает на (86х)
Вот процитированное - точно фигня. Три последние буквы названия файла базы данных для сервера вообще ничего не значат. Там хоть .doc может быть, лишь бы база была валидной.

Но я же точно не буду в ручную менять буквы расширения :-),
а IBExpert, в "Backup/restore" сам ставит такие расширения для "Backup" и "restore" в отдельности, там просто других нет

а настройки я сам сейчас проверю.
Хотя в самом приложении работающее с БД, в нем настроек нет ни каких, даже путь в код программы вбит наглухо с названием самой БД и расширением.

Сейчас просмотрел другие 3 приложения работающие с такими БД, 2 приложение - такая же ошибка (на 86 работают, на 64 - нет), третье работает :-)
...
Рейтинг: 0 / 0
10.10.2015, 20:06
    #39073637
IBExpert
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос БД с Windows (86x) на Windows (64x)
Ты в эксперте в форме восстановления БД включил галку "Fix malformed UNICODE_FSS metadata using charset" и вписал в поле рядом название чарсета, в котором в твоей БД объекты и их комментарии живут (WIN1251, полагаю)?
...
Рейтинг: 0 / 0
10.10.2015, 21:03
    #39073655
Konstantin-78
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос БД с Windows (86x) на Windows (64x)
IBExpertТы в эксперте в форме восстановления БД включил галку "Fix malformed UNICODE_FSS metadata using charset" и вписал в поле рядом название чарсета, в котором в твоей БД объекты и их комментарии живут (WIN1251, полагаю)?

Да, я этор сделал (как описано на картинке),

кроме того я включил виртуалку Windows 8.1 (x86), поставил FireBird 2.5.4.26856 (x86), переписал программу на нее и запустил, - она ЗАРАБОТАЛА!!!
НО ЭТО НА 86х
...
Рейтинг: 0 / 0
11.10.2015, 00:41
    #39073745
Konstantin-78
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос БД с Windows (86x) на Windows (64x)
IBExpertТы в эксперте в форме восстановления БД включил галку "Fix malformed UNICODE_FSS metadata using charset" и вписал в поле рядом название чарсета, в котором в твоей БД объекты и их комментарии живут (WIN1251, полагаю)?

Спасибо, про галочки я забыл.
значения "WIN1251" поставил, а вот про галки забыл...
до селе никогда этими функциями при restore не пользовался
...
Рейтинг: 0 / 0
11.10.2015, 01:06
    #39073758
Konstantin-78
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос БД с Windows (86x) на Windows (64x)
IBExpert,

Еще такой вопрос:
а на против "Fix malformed UNICODE_FSS data using charset" ставить такие же параметры, нужно? (этот же параметр описывает сами данные...).

Вообще-то у меня раньше БД на IB были, и при каждом переносе, делал backup/restore, это при FB расславбился :-)
...
Рейтинг: 0 / 0
11.10.2015, 06:08
    #39073769
IBExpert
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос БД с Windows (86x) на Windows (64x)
Konstantin-78а на против "Fix malformed UNICODE_FSS data using charset" ставить такие же параметры, нужно? (этот же параметр описывает сами данные...).

Если ты в своих, пользовательских таблицах не использовал чарсет UNICODE_FSS, то не надо.
...
Рейтинг: 0 / 0
11.10.2015, 06:51
    #39073771
Gallemar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос БД с Windows (86x) на Windows (64x)
Konstantin-78переписал программу на нее и запустил, - она ЗАРАБОТАЛА!!!
НО ЭТО НА 86х
Ошибаешься
Ты просто путаешь fbclient.dll для x64 и x32, а они "живут" в разных местах.
При установке Firebird x64 - c:\Program Files\Firebird\Firebird_2_5\bin\fbclient.dll - версия клиента x64, а c:\Program Files\Firebird\Firebird_2_5\WOW64\fbclient.dll - версия x32. Научи программу брать правильный клиент и жизнь наладится.
...
Рейтинг: 0 / 0
13.10.2015, 00:08
    #39074986
kdv
kdv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос БД с Windows (86x) на Windows (64x)
Konstantin-78,

какой-то караул.

1. базы несовместимыми между 32 и 64 битными ФБ могут быть только в формате ODS 10, т.е. 1.5. ODS (формат БД) можно увидеть в
gstat -h db.fdb.

2. Если и правда п.1, то возможно этим базам никто никогда backup/restore на 2.5 не делал. Таким образом, при попытке restore под 2.5 вылезет указанная ошибка про Invalid metadata detected. В этом случае опции -fix_fss_metadata и -fix_fss_data указываются ОДИН РАЗ. Если сделать бэкап и указать эти опции еще раз, то исходники метаданных будут убиты. Пример парня, который поставил эти опции в регулярный restore, есть на этом форуме.

3. никто не заставляет под 64битной ОС работать с 32битным ФБ, особенно если это Classic (тут нет большой разницы между 32бит и 64бит).
Для работы с фб при разработке 64битный дистрибут только путает, потому что у него 64битный fbclient.dll никак (почти) не отличить от 32битного. А Дельфи, ИБЭксперт и прочее, кому нужен клиент - как раз 32битные.

4. учитесь администрировать (делать backup/restore хотя бы) ФБ в командной строке. тогда будет понятно, какие опции надо включать и в ИБЭксперте.
http://www.ibase.ru/devinfo/gbak.htm
...
Рейтинг: 0 / 0
13.10.2015, 18:59
    #39075945
Konstantin-78
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос БД с Windows (86x) на Windows (64x)
kdv
3. никто не заставляет под 64битной ОС работать с 32битным ФБ, особенно если это Classic (тут нет большой разницы между 32бит и 64бит).
Для работы с фб при разработке 64битный дистрибут только путает, потому что у него 64битный fbclient.dll никак (почти) не отличить от 32битного. А Дельфи, ИБЭксперт и прочее, кому нужен клиент - как раз 32битные.


Конечно не заставляет, просто на будущее, если придется запустить - интересно (БД большие- нехочется с ними ничего лишнего делать).

В принципе вот тут написано, что клиенетсткое приложение может быть х32, а разрядность сервера не имеет значения:
" ...Поэтому, если предполагается, что приложение должно работать независимо от других приложений с конкретной версией клиента, то файлы клиента требуется разместить в папке приложения, и не прописывать этот путь в PATH. "

но наверно че-то пропустил, файлы в дирректорию с приложением положил, но ничего хорошего это не дало.


- в принципе "fbclient.dll" на х64 и х32, имеет различие в размерах самого файла.
...
Рейтинг: 0 / 0
13.10.2015, 19:02
    #39075950
Gallemar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос БД с Windows (86x) на Windows (64x)
Бред
...
Рейтинг: 0 / 0
14.10.2015, 01:48
    #39076115
kdv
kdv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос БД с Windows (86x) на Windows (64x)
Konstantin-78В принципе вот тут написано, что клиенетсткое приложение может быть х32, а разрядность сервера не имеет значения:
ага, это я и писал.

Konstantin-78 файлы в дирректорию с приложением положил, но ничего хорошего это не дало.
если приложение 32битное, а клиент 64битный, или наоборот, приложение не сможет загрузить dll "не той битности", и никакого коннекта к серверу просто не произойдет. А про несовместимости БД и разрядности сервера я уже написал в предыдущем ответе.
Вообще ваша фраза "ничего хорошего это не дало" - раздражает точно так же как и общая фраза "не работает". Вы не можете привести сообщение об ошибке?
...
Рейтинг: 0 / 0
Форумы / IBExpert [игнор отключен] [закрыт для гостей] / Перенос БД с Windows (86x) на Windows (64x) / 25 сообщений из 52, страница 1 из 3
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]