Сложность проблемы обусловлена несколькими особенностями.
1. Разные версии СУБД Firebird используют разные версии внутренней структуры файлов БД, и сервер отказывается открывать файл с БД от другой версии. Если возможность обновления структуры файла БД исключена, необходимо устанавливать параллельно две разные версии сервера. Аналогично, при подключении необходимо учитывать, к которой версии нужно подключение.
2. Разные версии сервера требуют для подключения разные версии клиентской библиотеки – файл gds32.dll. Это необходимо учесть при настройке подключения в программах.
3. По умолчанию, все версии сервер прослушивают один и тот же порт, поэтому надо их разнести на разные порты в настройках
4. При установке сервера, система не дает установить их в службах с одинаковым названием.
Рассмотрим вариант, когда корректно установлен Firebird версии 3.0, и необходимо параллельно установить версию 1.5.
1. Не удаляя Firebird версии 3, необходимо установить Firebird версии 1.5. Во время установки необходимо установить дополнительные параметры на страничке «Выберите дополнительные задачи» см рис:
а) «Использовать Guargian для управления процессом»- выключить,
б) «Запустить в качестве Службы» - оставить включенной
в) «Запускать автоматически при каждой загрузке»- оставить включенной г) «Установить Апплет Панели Управления» - выключить
д) «Скопировать клиентскую библиотеку в директорию <system> - оставить выключенной
е) «Сгенерировать клиентскую библиотеку GDS32.DLL для поддержки»- выключить
По умолчанию, сервер будет установлен в каталог C:\Program Files (x86)\Firebird\Firebird_1_5 (для windows7) или C:\Program Files\Firebird\Firebird_1_5 (для Windows XP). В момент установки новая служба не будет создана из-за работающей службы сервера другой версии.
2. На компьютере с установленным СУБД необходимо найти файл с настройками сервера Firebird - его название firebird.conf. Находится он в том каталоге, куда был ранее установлен firebird. Если вы не знаете или не уверены, в какой каталог он был установлен - этот каталог был определен на предыдущем шаге. Открыть файл можно простым текстовым редактором- например, Блокнот (Notepad.exe). В содержимом этого файла необходимо найти строку содержащую RemoteServicePort. Обычно она закомментирована и имеет вид
RemoteServicePort = 3050
Необходимо её раскомментировать и присвоить другое значение, например RemoteServicePort = 3060
После этого измененный файл с настройками необходимо сохранить и закрыть.
3. После изменения настроек необходимо установить firebird 1.5 как службу и запустить. Библиотеку версии 3 можно оставить в системном каталоге, а библиотеку версии 1.5 скопировать в каталоги с программами, использующими эту версию. Возможен обратный вариант – в системный каталог скопировать библиотеку версии 1.5, и она будет по умолчанию использоваться всеми программами, кроме тех программ, в чьи каталоги будет скопирована версия 3.
Соответственно, это учесть необходимо на всех клиентских компьютерах если с них планируется подключаться к серверам разных версий. Если на компьютере установлена клиентская часть только к одной из версий, никаких изменений не требуется.
5. Необходимо изменить строку подключения в программах на каждом компьютере. Если изначально указано расположение базы данных "На сервере", необходимо к названию сервера приписать через дробь номер порта - т.е. "server/3060". Если изначально расположение базы данных "локально", то
а) Желательно скопировать в буфер строку "файл базы данных" (Ctrl-C);
б) Указать "расположение базы данных" как "на сервере", в название сервера- указать "localhost/3060".
ВНИМАНИЕ!- при вводе посимвольно строки localhost название сервера сразу же сбрасывается, но можно ввести сначала порт, затем перевести каретку вперед и ввести localhost.
в) Скопировать из буфера значение в строку "файл базы данных".
г) Нажать кнопку "Проверка", чтобы проверить соединение с БД.
д) Повторить это изменение строки подключения для всех используемых БД для всех программ.