Несколько копий СУБД Firebird на одном сервере
Несколько копий СУБД Firebird (одинаковых или разных версий) могут одновременно выполняться на одном физическом сервере при условии, что каждой копиии будет назначен свой номер порта для коммуникации с клиентскими приложениями.
Рассмотрим такую ситуацию: на предприятии используется программное обеспечение с базой данных Firebird 2.0 на сервере с именем SERVER. Необходимо на этот же физический сервер установить Firebird 2.5 для развертывания базы данных Гедымина.
Следуем инструкции:
- Скачиваем Firebird 2.5 "Zip kit for manual/custom installs" (архив для ручной установки) для подходящей нам операционной системы отсюда
- Распаковываем в папку c:\program files\firebird25 (название папки примерное. Главное -- не перезаписывайте существующие у вас папки Firebird, необходимые другим программам)
- В созданной папке находим и открываем на редактирование файл firebird.conf. Ищем строку #RemoteServicePort = 3050. Убираем знак комментария (решетку) и устанавливаем другой номер порта (например, 3055). В конечном итоге строка должна выглядеть так: RemoteServicePort = 3055
- Открываем окно командной строки (cmd)
- Переходим в папку c:\program files\firebird25\bin
- Выполняем команды:
instsvc install -s -a -n fb25 instsvc start -n fb25
Здесь с помощью ключа -n мы указываем имя процесса, отличное от других копий Firebird на данном компьютере. В нашем примере мы использовали ключ -s для запуска сервера архитектуры SuperServer. Используйте ключ -c для сервера классической архитектуры или -m — для супер классика.
Теперь можно разворачивать базу данных и настраивать клиентские приложения. Для подключения, в имени базы данных следует указывать имя сервера и номер порта. Например, если путь к файлу базы данных на сервере — c:\database\gdbase.fdb, то строка подключения будет выглядеть следующим образом:
SERVER/3055:c:\database\gdbase.fdb
Если на сервере установлен файрволл, не забудьте открыть указанный порт для коммуникации с сетевыми приложениями.