|
Firebird 3.0 Embedded подключения с разных приложений
|
|||
---|---|---|---|
#18+
Ariochа это, вангуюНе надо пророчествовать. Если рантайм видимостудии не установлен или (почему-то) установлен более другой сборки, просто оставляем библиотеки видимостудии в каталоге FB. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.08.2019, 14:46 |
|
Firebird 3.0 Embedded подключения с разных приложений
|
|||
---|---|---|---|
#18+
Шавлюк Евгенийне нужны права для переменной в своей программе. спорить не буду - вопросом пока не владею :) Но, если в системе 2 и более сервера, который FolderWithfbclient_dll будет "правильным"? И как это отразиться на подключении других приложений с другими серверами? Или достаточно выставить Local =True, чтобы разрешить все коллизии? зы. функция с просторов инета найдена? Не родная делфевая? Basil A. Sidorov"Вы просто не умеете их готовить". "Моя цвета не понимай ..." :) Я привел случаи, где и как я с этим столкнулся. Упомянутые мною семерки и XP - "чистые" микрософтовские изошники со WZORa, без апдейтов (зачем они мне на виртуалке) ... |
|||
:
Нравится:
Не нравится:
|
|||
28.08.2019, 14:19 |
|
Firebird 3.0 Embedded подключения с разных приложений
|
|||
---|---|---|---|
#18+
Док, Да, найдена на просторах инета. Эта настройка влияет только на текущую программу, никаких коллизий не вызывает. Я читаю путь к fbclient из ini-файла (по-умолчанию клиента храню в папке с программой) Больше никаких установок и 100% portable ... |
|||
:
Нравится:
Не нравится:
|
|||
28.08.2019, 14:54 |
|
Firebird 3.0 Embedded подключения с разных приложений
|
|||
---|---|---|---|
#18+
ДокЯ привел случаи, где и как я с этим столкнулся. Упомянутые мною семерки и XP - "чистые" микрософтовские изошники со WZORa, без апдейтов (зачем они мне на виртуалке)Ещё раз повторю, что я взял "золотой" образ семёрки от июля 2009 года. Там не то, что обновления - SP1 отсутствует ибо вышел в осенью 2010. P.S. И насчёт обновлений вы зря - их разных есть. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.08.2019, 16:38 |
|
Firebird 3.0 Embedded подключения с разных приложений
|
|||
---|---|---|---|
#18+
OFF Basil A. SidorovP.S. И насчёт обновлений вы зря - их разных есть. Мне разные ОСи в виртуалке "чисто посмотреть", как отображается гуй и ведет себя софтина в разной ситуации. А обновления, в основном, для безопасности. /OFF ... |
|||
:
Нравится:
Не нравится:
|
|||
28.08.2019, 18:10 |
|
Firebird 3.0 Embedded подключения с разных приложений
|
|||
---|---|---|---|
#18+
ДокМне разные ОСи в виртуалке "чисто посмотреть", как отображается гуй и ведет себя софтина в разной ситуации. А обновления, в основном, для безопасности.Во-первых, вести может по разному. Во-вторых, для семёрки (некоторые) обновления можно в образ ещё до его установки и гораздо проще, чем в XP. Код: plaintext 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
28.08.2019, 19:08 |
|
Firebird 3.0 Embedded подключения с разных приложений
|
|||
---|---|---|---|
#18+
Мучаюсь с такой же проблемой - не подключиться к одной и той же базе из разных приложений. Есть IBExpert, буквально вчера загруженный, в нем зарегистрирована база, прописан путь к 32-битной fbclient.dll (firebird 3.0.4 embedded). В firebird.conf всего две строчки: Код: c# 1. 2.
Есть приложение, в корне которого рядом с экзешником лежит 64-битная fbclient.dll, с точно таким же firebird.conf. Версии firebird embedded одинаковы, отличается только битность. Я могу открыть одну и ту же базу дважды в IBE. Приложений тоже могу запустить сколько угодно. Но сделать так, чтобы и приложение было запущено, и база открыта в IBE не получается. Если запустить приложение, а потом попытаться открыть базу в IBE, то вылетает ошибка:"lock manager error. Inconsistent lock table type/version; found 225/1:146, expected 225/1:18" Больше в системе никаких версий Firebird нет, и не было. Только эти два embedded. Вроде бы вот этот документ несколько раз перечитал, но то ли лыжи не едут... ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2019, 12:26 |
|
Firebird 3.0 Embedded подключения с разных приложений
|
|||
---|---|---|---|
#18+
axline, дык тут вам не здесь. Лок менеджеры в 32 и 64-битной версии разные. Нельзя одну и ту же БД открыть движками разной разрядности, даже если версия одна и та же. Какой раз уже задаю вопрос. Зачем вы себе геморрой на ровном месте устраиваете? Установи полноценную 64-битную версию FB и подключайся экспертом через TCP. А клиентское приложение пусть через embedded открывает. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2019, 12:51 |
|
Firebird 3.0 Embedded подключения с разных приложений
|
|||
---|---|---|---|
#18+
axline Версии firebird embedded одинаковы, отличается только битность . Размеры некоторых структур в общей памяти к сожалению зависят от разрядности. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2019, 12:54 |
|
Firebird 3.0 Embedded подключения с разных приложений
|
|||
---|---|---|---|
#18+
Симонов Денис, hvlad, спасибо большое, теперь понял. Пойду ставить полноценный x64 сервер :) ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2019, 13:06 |
|
Firebird 3.0 Embedded подключения с разных приложений
|
|||
---|---|---|---|
#18+
Вроде бы заработало все, помогло следующее (система Windows 10 x64): - Firebird 3.0.4 SuperClassic ставится как приложение. Если ставить как службу, то ругается "Database is probably already opened by another engine instance in another Windows session". - При установке в "Program Files", Firebird не может прочитать firebird.msg. Ругается на права доступа, не пишет firebird.log. Перенес в папку, где нет трудностей с доступом. - в IBE в качестве протокола устанавливается TCP/IP, Client library=gds32.dll - в приложении лежит embedded сервер той же версии, в firebird.conf указано: Код: pascal 1. 2.
Вещи тривиальные, но для чайников (вроде меня) могут сохранить много времени. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2019, 15:54 |
|
Firebird 3.0 Embedded подключения с разных приложений
|
|||
---|---|---|---|
#18+
axlineЕсли ставить как службу, то ругается "Database is probably already opened by another engine instance in another Windows session". не верю. Верю только в ситуацию, когда к базе одновременно лезут из сервиса, и из embedded. Embedded банально не видит контекста сервиса, и наоборот. Проверять даже не буду. axlineВещи тривиальные, но для чайников (вроде меня) могут сохранить много времени. не надо мутить - не будет проблем. Архитектура ФБ, плюс 32/64 бит - любой программист должен это знать. Ну и еще про "что такое dll". Тогда не будет вопросов про embedded. А так всё сводится к объяснению в сотый раз каких-то прописных истин. axline- в IBE в качестве протокола устанавливается TCP/IP, Client library=gds32.dll и зачем ИБЕ понадобилось именно gds32.dll? Ему же всё равно. А gds32.dll каким образом получена? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2019, 16:06 |
|
Firebird 3.0 Embedded подключения с разных приложений
|
|||
---|---|---|---|
#18+
axline, да, и еще. Указывать Classic для Embedded нет никакого смысла. И даже хуже. Если будет 2 коннекта из приложения, то оно будет 2 раза жрать память для сортировок. Поэтому SuperClassic only. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2019, 16:08 |
|
Firebird 3.0 Embedded подключения с разных приложений
|
|||
---|---|---|---|
#18+
kdv не верю. Верю только в ситуацию, когда к базе одновременно лезут из сервиса, и из embedded. Embedded банально не видит контекста сервиса, и наоборот. Проверять даже не буду. Да, именно одновременно. Я выше написал, что пытался к одной базе подключиться и из приложения, и из Эксперта. Так и получилось. kdv не надо мутить - не будет проблем. Архитектура ФБ, плюс 32/64 бит - любой программист должен это знать. Ну и еще про "что такое dll". Тогда не будет вопросов про embedded. А так всё сводится к объяснению в сотый раз каких-то прописных истин. На поиск этих истин не один час был убит. FB для меня, как и Windows, вещи очень далекие, специализация другая. Но вот резко понадобилось освоить. Предполагаю, что я не один такой :) kdv и зачем ИБЕ понадобилось именно gds32.dll? Ему же всё равно. А gds32.dll каким образом получена? Да, моя ошибка, она не нужна. С пустой строчкой прекрасно все работает. kdv да, и еще. Указывать Classic для Embedded нет никакого смысла. И даже хуже. Если будет 2 коннекта из приложения, то оно будет 2 раза жрать память для сортировок. Поэтому SuperClassic only. Вот это тонкий момент. В документе дословно сказано: "Note, for the embedded engine, Classic and Superclassic are equivalent.". Это ошибка? Или этот документ устарел? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2019, 16:50 |
|
Firebird 3.0 Embedded подключения с разных приложений
|
|||
---|---|---|---|
#18+
axline С пустой строчкой прекрасно все работает. это значит, что fbclient.dll находится в системных папках или в PATH. gds32.dll откуда явился? по умолчанию в настройках алиса ИБЕ? Почему бы не указать fbclient.dll явно??? axlineЭто ошибка? Или этот документ устарел? мне начать расказывать прописные истины, что такое embedded, и как работает exe+dll? И почему в данном случае classic и superclassic равнозначны? И почему, для собственного же понимания, всё-таки лучше прописать SuperClassic, чтобы не было двусмысленностей? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2019, 17:41 |
|
Firebird 3.0 Embedded подключения с разных приложений
|
|||
---|---|---|---|
#18+
kdv Если будет 2 коннекта из приложения, то оно будет 2 раза жрать память для сортировок. Classic\SuperClassic отличаются только для сетевого сервера - он либо запускает новые процессы для входящих коннектов, либо обслужавает всё сам. Для embedded этого отличия, есс-но, нет. PS Такие есть одно место, где есть разница между Classic и SuperClassic для embedded - Classic игнорирует значение linger, ибо считается что при дисконнекте процесс завершается. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2019, 17:58 |
|
Firebird 3.0 Embedded подключения с разных приложений
|
|||
---|---|---|---|
#18+
kdv мне начать расказывать прописные истины, что такое embedded, и как работает exe+dll? Дим, прописные истины - это 1НФ. Что такое embedded - прописная истина для членов Партии с 1905 года. А когда человеку впервые пришлось столкнуться именно с FB - откровений в единицу времени может оказаться многовата ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2019, 18:44 |
|
Firebird 3.0 Embedded подключения с разных приложений
|
|||
---|---|---|---|
#18+
hvlad, хм. У меня написано что Linger нужен только для супера. А какой смысл его использовать для SC, если там всё равно кеш раздельный и небольшой ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2019, 18:45 |
|
Firebird 3.0 Embedded подключения с разных приложений
|
|||
---|---|---|---|
#18+
Симонов Денис, да, ты прав конечно же. Там есть дополнительне условие, на которое я не смотрел. Так что - для движка SC и CS не отличаются совсем, никак. Отличие есть только для сетевого сервера. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2019, 19:09 |
|
|
start [/forum/topic.php?fid=40&gotonew=1&tid=1560527]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
67ms |
get topic data: |
10ms |
get first new msg: |
7ms |
get forum data: |
2ms |
get page messages: |
63ms |
get tp. blocked users: |
1ms |
others: | 287ms |
total: | 467ms |
0 / 0 |