• Ласкаво просимо на Спільнота для обміну досвідом між користувачами програм УкрБланк, УкрСклад, УкрЗарплата.
 

Установка на сервер с Linux CentOS 8.1 или Fedora 31

Автор alex_d, Квітень 05, 2020, 22:42:29

Попередня тема - Наступна тема

0 Користувачі і 2 Гостей дивляться цю тему.

alex_d

Краткая последовательность действий по установке firebird 3 на CentOS или Fedora

Надеюсь кому-то тема поможет, потому как мануал, ранее выложенный на форуме, несколько отличается от реалий rpm-based систем.
Для установки я пользовался пакетным менеджером, а не архивом с сайта firebird.


1.Подключаем репозиторий EPEL(Extra Packages for Enterprise Linux), для Fedora этот шаг пропускаем:
dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm -y

2. Ставим firebird. Рекомендуемая версия 3.0.4 была, но обновилась до 3.0.5. Архива у EPEL нет.
dnf install firebird

3. В /etc/firebird/firebird.conf с помощью любимого текстового редактора меняем порт на 3053, для ленивых это должно сработать:
sed -i s/^"RemoteServicePort = 3050"/"RemoteServicePort = 3053"/g /etc/firebird/firebird.conf
Если конфиг вдруг сломался:
dnf reinstall firebird
И дальше правим порт в редакторе.

4. Создаем юзера sysdba с помощью isql-fb. Ни CentOS ни Fedora при установке через пакетный менеджер этого не делают.
isql-fb -user sysdba /var/lib/firebird/secdb/security3.fdb
SQL> create user SYSDBA password 'masterkey';
SQL> commit;
SQL> quit;


5. Закидываем SkladTcb.emp и бэкап вашей базы backup.fdk в /var/lib/firebird/data

6. Вытаскиваем базу из бэкапа:
gbak -c -v -user SYSDBA -password masterkey /var/lib/firebird/data/backup.fbk /var/lib/firebird/data/Sklad.tcb
И тут есть 2 момента - во-первых Sklad.tcb должен быть именно с большой буквы, SKLAD.TCB не подойдет, как и sklad.tcb.
Во-вторых, если вы мигрируете на новую версию Укрслада и база большая, имеет смысл поставить локальную версию, в ней обновить базу и уже новую закидывать на сервер, иначе при первом запуске она будет долго обновляться.

7. Включаем сервис firebird:
systemctl enable firebird-superserver

8. Меняем права на файлы баз:
chown firebird:firebird /var/lib/firebird/ --recursive

9. Открываем доступ к порту 3053:
firewall-cmd --zone=public --add-port=3053/tcp --permanent && systemctl restart firewalld

10. Запускаем сервис firebird:
systemctl start firebird-superserver

Правим если нужно на клиентах ubclient.ini и всё готово к работе.

Самсон

Спасибо. Посоветуете как настроить бэкап базы на linux сервере?

alex_d

Я ленюсь, делаю архив ночью из базы и высылаю скриптом себе через телеграм-бота.
Правильно было бы делать утилитой gbak, это особенно актуально при разворачивании старой базы на новых версиях firebird'a. У меня при переходе с 2х на 3.0.5 простое копирование Sklad.tcb не сработало.
В любом случае, когда сделаете бэкап - обязательно сделайте из него тестовое восстановление, чтобы убедиться что все работает.