Установка PostgreSQL 10 для 1С:Предприятие на Debian / Ubuntu (сборка от 1С)

  • Автор:

Postgresql-10-1C-debian-ubuntu-000.pngЕще сравнительно недавно пользователи связки 1С:Предприятие и PostgreSQL имели достаточно неплохой выбор сборок СУБД: сборка от 1С, сборки Ethersoft и Postgres Professional. Но Ethersoft прекратил выпуск PostgreSQL для 1С, а Postgres Professional последнее время движется в сторону коммерциализации. Поэтому в настоящий момент практически не осталось альтернатив сборке от 1С, которая не пользовалась особой популярностью ввиду более сложного процесса установки. Однако не все так плохо и если вы будете следовать нашим инструкциям, то затруднений у вас возникнуть не должно.

Получить сборку от 1С можно на портале https://releases.1c.ru/, где она доступна без ограничений всем пользователям лицензионной версии любой конфигурации 1С с активной подпиской ИТС. Мы будем устанавливать последнюю на текущий момент версию PostgreSQL 10.9-5.1C, но алгоритм установки будет общим для всех сборок 10-й версии.

Из всего обилия ссылок на странице продукта нам потребуется только Дистрибутив СУБД PostgreSQL для Linux x86 (64-bit) одним архивом (DEB), сразу оговоримся, мы не видим никакого практического смысла использовать 32-битные версии сервера СУБД, поэтому будем производить установку 64-битной версии на 64-битную систему.

Postgresql-10-1C-debian-ubuntu-001.pngВ качестве целевых систем будут использоваться Debian 10 и Ubuntu 18.04 LTS, в случае использования иных целевых ОС вам потребуется правильно установить необходимые зависимости, как это сделать мы расскажем ниже.

После скачивания архива мы тщательным образом проверили зависимости с целью найти проблемные версии пакетов. 1С, как всегда, оказалась в своем репертуаре, собрав пакеты для среды Ubuntu 16.04 и "прибившись гвоздями" к определенным версиям библиотек. Проблемных пакетов ровно два:

  • libssl1.0.0 - разделяемые библиотеки для реализации протоколов шифрования SSL и TLS
  • libicu55 - компоненты интернационализации для Unicode

После чего идем на https://packages.debian.org или https://packages.ubuntu.com и выясняем наличие данных пакетов для используемой вами версии дистрибутива. В репозиториях Debian 10 оба пакета отсутствуют, для Ubuntu 18.04 нет только пакета libicu55.

Дальнейший алгоритм действий довольно прост, если пакет есть в репозитории, то устанавливаем его обычным образом, через пакетный менеджер, в противном случае качаем из репозитория наиболее близкого по структуре дистрибутива.

С libicu55 особого выбора у нас нет и мы скачали пакет для Ubuntu 16.04: https://packages.ubuntu.com/xenial/libicu55; libssl1.0.0 для Debian 10 мы скачали из репозитория Ubuntu 18.04: https://packages.ubuntu.com/bionic/libssl1.0.0. Для более старых выпусков Debian или иных базирующихся на его пакетной базе дистрибутивов следует качать пакеты из наиболее близкого аналога, так для Debian 9 следует качать пакеты от Ubuntu 16.04 или Debian 8.

Таким образом комплект для установки PostgreSQL должен состоять у вас из скачанных с сайта 1С пакетов (их три) и полученных по ссылкам выше libicu55 и libssl1.0.0 (только для Debain).

Postgresql-10-1C-debian-ubuntu-002.pngПередадим этот набор на сервер любым удобным способом, далее мы будем считать, что он находится в домашней директории пользователя.

Перед тем как приступать к установке проверим настройку локалей сервера, они должны быть установлены в ru_RU.UTF-8, проверить это можно командой:

locale

После чего вы должны получить следующий вывод:

Postgresql-10-1C-debian-ubuntu-003.pngЕсли вы получили отличный результат, то вам нужно русифицировать систему, как это сделать описано в нашей статье: Настройка языка и региональных стандартов в Ubuntu Server/Debian. После чего не забудьте перезагрузить систему.

Перейдем в директорию с нашими пакетами, в нашем случае это домашняя директория пользователя:

cd ~

Затем начинаем устанавливать зависимости, для Debian 10 выполните следующие команды:

apt install libxslt1.1
dpkg -i libssl1.0.0*.deb
dpkg -i libicu55*.deb

Для Ubuntu 18.04:

apt install libssl1.0.0
dpkg -i libicu55*.deb

После чего можно приступить к установке самого PostgreSQL, обратите внимание, что все пакеты следует ставить в указанной нами последовательности:

apt install postgresql-common
dpkg -i libpq5*.deb
dpkg -i postgresql-client-10*.deb
dpkg -i postgresql-10*.deb

В Debian 10 вы можете получить следующее предупреждение, которое можно смело проигнорировать:

Postgresql-10-1C-debian-ubuntu-003.pngТакже обратите внимание, что мы везде, где это возможно, использовали подстановочные символы в именах пакетов, это позволяет успешно использовать эту инструкцию вне зависимости от версии PostgreSQL 10 и пакетов libssl1.0.0 и libicu55 , однако будьте внимательны, в директории не должно находиться иных пакетов, чьи имена могут попасть под маску, иначе это может привести к непредсказуемым последствиям.

В пакетах от 1С уже настроены все необходимые параметры доступа и все что нам остается - это задать пароль для суперпользователя PostgreSQL - postgres. Перед тем как выполнять следующие действия, убедитесь, что вы находитесь в консоли с правами суперпользователя, если это не так, то выполните:

sudo -s

Теперь войдем в систему от имени пользователя postgres:

su postgres

Откроем консоль PostgreSQL:

psql

И установим пароль:

ALTER USER postgres WITH PASSWORD 'MyPa$$word';

Для выхода из консоли введите:

\q

После чего можно создать новую базу через оснастку Администрирование серверов 1С Предприятия или стартер 1С.

Postgresql-10-1C-debian-ubuntu-005.pngКак видим, если вдумчиво подойти к процессу, то установка сборки PostgreSQL 10 от 1С не таит в себе каких-либо сложностей и может быть осуществлена даже начинающим пользователем Linux, достаточно следовать данной инструкции и хотя бы в общих чертах понимать смысл выполняемых действий.