Текущий архив: 2005.12.11;
Скачать: CL | DM;
ВнизПроблема с подключением к Firebird Imbedded 1.5 Найти похожие ветки
← →
Slider007 © (2005-10-27 11:56) [0]Привет всем!
Возникла следующая проблема :
Скачал сервер Firebird-1.5.1.4481_embed_win32 (Файл Firebird-1.5.1.4481_embed_win32.zip). По инструкции распаковал и переименовал нужные файлы. В IBExpert (ver. 2005.9.25.1_full) создал базу, но подключится к ней не могу - выдает ошибку. После долгого битья головой об клавиатуру решил, что возможно что-то напортачил при установке сервера (хотя инструкцию вдоль и поперек перечитал, там кстати даже пример структуры каталогов есть), и решил попробовать подключится к базе всеми известного Magic Forum"а (привет Piter"у :)). Но результат так же оказался плачевный - к базе прицепиться я не смог, вылетает та же ошибка.
К слову - в сети стоит сервер, на котором запущен InterBase5.6, так вот к нему я без проблем цепляюсь.
Вот параметры которые я выстявлял в IBExpert при подключении к базе Magic Forum:
Сервер - Удаленный
Имя сервера - localhost или 127.0.0.1
Протокол TCP/IP
Версия сервера - пробовал все доступные
Файл базы данных - C:\Program Files\Magic Forum\base\DFBASE.GDB
Пользователь - SYSDBA
Пароль - masterkey
Кодировка WIN1251
Файл клиентской библиотеки - C:\Program Files\Magic Forum\gds32.dll
Сообщение об ошибке такое:
###########################################
Attempting to connect to:
localhost:C:\Program Files\Magic Forum\base\DFBASE.GDB
Connecting... Failed!
------------------------------------
wrong or obsolete version
.
unsupported on-disk structure for file C:\Program Files\Magic Forum\base\DFBASE.GDB; found 10, support 9.
Attempting to connect to services manager... Failed!
------------------------------------
Unsuccessful execution caused by system error that does not preclude successful execution of subsequent statements.
service service_mgr is not defined.
Disconnecting from database... Passed!
###########################################
Помогите пожалуйста разобраться что я не так делаю ?
← →
Johnmen © (2005-10-27 12:12) [1]Ты запустил одну версию сервера (FB1.5), а БД была создана под другой версией сервера (IB5.6). А у них, ес-но, разные структуры файла БД (ODS), о чём и говорится в сообщении...
← →
Slider007 © (2005-10-27 12:16) [2]Johnmen © (27.10.05 12:12) [1]
C:\Program Files\Magic Forum\base\DFBASE.GDB это же база Magic Forum, я её вообще не создавал, а создавал её Piter, и явно не под IB5.6
← →
Johnmen © (2005-10-27 12:27) [3]Тогда тебе к Питеру...:)
← →
Desdechado © (2005-10-27 12:38) [4]насколько я помню, в инструкции к Embedded написано, что тип подключения должен быть ЛОКАЛЬНЫМ
возможно, ты также неверно указал файл клиентской библиотеки
← →
Slider007 © (2005-10-27 12:43) [5]Desdechado © (27.10.05 12:38) [4]
да вообще-то я его явно указал - Файл клиентской библиотеки - C:\Program Files\Magic Forum\gds32.dll
← →
Slider007 © (2005-10-27 12:45) [6]Desdechado © (27.10.05 12:38) [4]
Database access
Client access can be only via the TCP/IP local loopback
protocol, i.e. a TCP/IP connection string that includes
the server name "localhost" or IP address 127.0.0.1; or
by using the Named Pipes protocol incorporating the
Windows server name.
The embedded server does not support the IPServer "local
connect" to a database file path without a server name.
The client must have exclusive access to the database file.
The embedded server acts as a true local server for a single
client accessing databases on a local machine. It can also
act as a remote gateway that redirects all network calls to
other hosts, just as the regular client library
does.
← →
Desdechado © (2005-10-27 12:48) [7]а первую часть моего поста вник?
← →
Desdechado © (2005-10-27 12:54) [8]для 1.5.2
2.2. Database access
Client access can be only via the local protocol,
i.e. NOT a TCP/IP connection string that includes
the server name "localhost" or IP address 127.0.0.1.
← →
Slider007 © (2005-10-27 12:56) [9]Desdechado © (27.10.05 12:48) [7]
вник, ты написал что тип подключения должен быть ЛОКАЛЬНЫМ.
Выбираю в параметрах подключения:
Сервер - Локальный
Файл базы данных - localhost:C:\Program Files\Magic Forum\base\DFBASE.GDB (см[6]).
Остальные параметры без изменения. Смысл же тот же самый остался, да и ошибка не изменилась.
В чем-то другом загвоздка, только не понимаю в чём :(
← →
Slider007 © (2005-10-27 13:01) [10]Когда пробую подключиться локально, IBExpert виснет намертво :(
← →
Slider007 © (2005-10-27 13:16) [11]Короче ничё не понимаю - скачал Blazetop и с помощью него легко подключился ... Буду дальше в IBExpert копаться ..
← →
Desdechado © (2005-10-27 13:31) [12]ты думать начнешь или как?
localhost:C:\Program Files\Magic Forum\base\DFBASE.GDB
^
лишнее
← →
Slider007 © (2005-10-27 13:48) [13]Desdechado © (27.10.05 13:31) [12]
Уже убрал localhost, теперь при попытке прицепиться IBExpert виснет намертво. Так же не могу в Делфи подключится ни через IBX, ни через FIBPlus. Цепляется только Blazetop, но у него несколько другая логика - вначале регистрируется сервер (в котором указывается файл базы и файл клиентской библиотеки), а потом в сервере уже сама база.
← →
Desdechado © (2005-10-27 13:56) [14]"возможно, ты также неверно указал файл клиентской библиотеки"
Проверь еще раз. Не путь к ней, а саму библиотеку. Для embedded это одновременно и сервер. Может, от другой версии или вообще от IB.
← →
Slider007 © (2005-10-27 14:07) [15]Desdechado © (27.10.05 13:56) [14]
Не путь к ней, а саму библиотеку.
сама то библиотека в порядке, т.к. Blazetop с ней нормально работает
← →
Piter © (2005-10-27 18:38) [16]База Magic Forum создается с помощью того же Firebird Embedded.
Насчет TIBDatabase в Delphi - он цепляет просто gds32.dll по всем правилам поиска DLL.
Поэтому, если хочешь, чтобы программа использовала Embedded - то соответствующая DLL (gds32.dll) должна лежать в каталоге со скомпилированной программой. Или он тогда зацепит клиентскую gds32.dll из каталога Windows для IBASE сервера.
Насчет IBExpert - это может быть просто его глюк при работе с Embedded.
>сама то библиотека в порядке, т.к. Blazetop с ней нормально работает
может он не с ней работает, а цепляет стандартную gds32.dll из каталога windows.
← →
Slider007 © (2005-10-28 06:06) [17]Piter © (27.10.05 18:38) [16]
пасибо, буду дальше копаться
← →
Slider007 © (2005-10-28 06:46) [18]Ёлки-палки, мистика какая-то !
Я уже писал, что IBX тоже не может к базе прицепиться, дык он оказывается в дизайн тайме цепляться не хочет, а в ран тайме работает как миленький !!
Спасибо всем, кто помогал разобраться :)
← →
Виталий Панасенко (2005-10-28 10:26) [19]
> Slider007 © (28.10.05 06:46) [18]
> Ёлки-палки, мистика какая-то !
> Я уже писал, что IBX тоже не может к базе прицепиться, дык
> он оказывается в дизайн тайме цепляться не хочет, а в ран
> тайме работает как миленький !!
> Спасибо всем, кто помогал разобраться :)
Потому как в ран-тайме ЕХЕ лежит рядом с DLL...
← →
Slider007 © (2005-10-28 10:50) [20]Виталий Панасенко (28.10.05 10:26) [19]
Потому как в ран-тайме ЕХЕ лежит рядом с DLL...
Ой спасибо тебе добрый человек !!! Как же я сам-то не додумался ?
Я и в IBExpert"е базу теперь подключил - стоило всего лишь gds32.dll рядышком с ibexpert.exe положить ...
← →
Desdechado © (2005-10-28 11:04) [21]У меня на машине стоит и FB Embedded, и FB Super.
Никаких махинаций (типа переноса клиентской библиотеки в каталог с программой) не требуется, чтобы подключиться к БД. Даже если погасить FB Super. Надо просто правильно настраивать подключение. О чем я выше уже говорил.
← →
Zacho © (2005-10-28 11:15) [22]Slider007 © (28.10.05 10:50) [20]
Для разработки БД лучше используй полноценный FB, а не Embedded, гораздо удобнее.
Например, частенько бывает, что к одной базе нужно одновременно три подключения: из IBExpert, из IDE Delphi, и из самой программы.
А с Embedded тебе придётся постоянно отключаться/подключаться.
← →
Slider007 © (2005-10-28 12:09) [23]Zacho © (28.10.05 11:15) [22]
Для разработки БД лучше используй полноценный FB, а не Embedded, гораздо удобнее.
У нас в сети установлен InterBase5.6 и почти все машины цепляются к нему (торговая программа). Если я поставлю в сети ещё один сервер, но не IB5.6, а FB1.5 например, не возникнет ли конфликтов ? Ведь разные сервера испоьзуют файлы клиентской библиотеки разных версий. Или конфликта можно будет избежать положив соответствующие файлы клиентской библиотеки в директории с соответствующими программами ?
← →
Desdechado © (2005-10-28 12:14) [24]а что мешает поставить FB к себе
конфликтов в сети не будет, ибо не зная, где сервер, никто к нему не подключится
а у себя разрули через явное указание клиентской библиотеки
← →
Zacho © (2005-10-28 15:19) [25]Slider007 © (28.10.05 12:09) [23]
Ведь разные сервера испоьзуют файлы клиентской библиотеки разных версий
Сервера не используют клиентские библиотеки. Их используют приложения.
Чтобы разрулить конфликты между серверами достаточно сконфигурировать подключения на разные порты. А на клиенте - см. [24]
Страницы: 1 вся ветка
Текущий архив: 2005.12.11;
Скачать: CL | DM;
Память: 0.51 MB
Время: 0.036 c