Найти тему
SoftOnIT.RU

Как установить PostgreSQL на Linux для 1С

Оглавление

Разворачивать и настраивать PostgreSQL продолжим на виртуальной машине Hyper-V, где ранее в качестве операционной системы установили Linux из дистрибутива «Ubuntu Server LTS 22.04». Графическая оболочка у нас XFCE4, но это ни на что не повлияет - в любой момент даже после установки можно будет поставить другую "графику", на работе программ это не отразится. Пока что мы не устанавливаем  сервер 1С на эту машину - сделаем в следующей статье, поэтому для проверки воспользуемся кластером серверов на другой машине под Windows.

-2

Скачиваем PostgreSQL

Наша задача - подготовить сервер для работы с 1С, поэтому обычная установка в пару строк терминала нам не подойдёт, т.к.  для работы с «сервером 1С» требуется специальная версия PostgreSQL, которая содержит необходимые патчи. И тут возникает вопрос: откуда брать эти самые "версии"?

Существует различные источники уже готовых дистрибутивов:

  • Непосредственно от самой фирмы 1С, размещенный на их портале https://releases.1c.ru - куда без учетной записи не попасть.
  • Другие компании, предоставляющие оптимизированные дистрибутивы для 1С. Например, https://1c.postgres.ru -  компания всячески поддерживает СУБД для 1С, активно участвует в разработке самого движка базы данных.

Использовать будем второй  вариант, потому что на практике  в пакеты, предоставляемые от самой 1С часто забывают "положить" нужные доп. компоненты и библиотеки, что приводит к необходимости качать их отдельно. А дистрибутивы предоставляемые компанией «1c.postgress» стабильны и без нареканий + после установки части необходимых настроек для сервера уже будут прописаны в файлах. Ребята молодцы, сразу постарались предвосхитить возникающие вопросы - перейдя по ссылке можете ознакомиться и с другими ответами.

Для скачивания дистрибутива ответьте на вопросы, заполните данные для получения инструкции по установке. Мы выбрали 15 версию PostgreSQL.

-4

Удаленное управление Linux по RDP

Установка PostgreSQL

1. После того как получили письмо с инструкцией, начнем установку и настройку. И первым делом подключим репозиторий PostgreSQL.

sudo wget https://repo.postgrespro.ru/1c-15/keys/pgpro-repo-add.sh
sudo sh pgpro-repo-add.sh
 
 

2. Устанавливаем базу данных - перед установкой обязательно обновляем пакеты:

sudo apt update
sudo apt upgrade
sudo apt-get install postgrespro-1c-15
 
 

3. Следующим шагом будет - добавление в автозагрузки системы:

sudo systemctl enable postgrespro-1c-15
 
 

4. В целом - можно считать, что установка завершена, далее остается небольшая настройка. Обязательно проверим состояние нашего сервиса - запущен ли он или нет:

sudo systemctl status postgrespro-1c-15
-8

Настройка PostgreSQL

1. Зададим пароль для пользователя «postgres»

Чтобы обеспечить безопасность 1С, первым делом необходимо установить пароль для внутреннего пользователя "postgres", который будет использоваться для выполнения операций в PostgreSQL. Установка пароля для пользователя "postgres" также необходима для того, чтобы  в дальнейшем, когда мы будем создавать новые базы в кластере серверов 1С можно было указать пароль пользователя баз данных.

sudo -i -u postgres
sudo /opt/pgpro/1c-15/bin/psql -U postgres -c "alter user postgres with password 'тут вводим пароль';"
-9

Если все хорошо, вернется надпись ALTER ROLE.  

2. Разрешаем подключения к PostgreSQL по сети

Следующим шагом предоставим возможность другим машинам в локальной сети использовать подключение к postgre. Т.к. по умолчанию PostgreSQL слушает только адрес localhost - мы укажем, какие сетевые интерфейсы смогут подключаться к базе. Для этого необходимо перенастроить файл «postgresql.conf»:

  • Внутри файла раскомментируем и изменим значение строки на «listen_addresses = *» - таким образом разрешим доступ с любых хостов
  • откроем порт 5432 - это стандартный порт, который слушает PostgreSQL. Необходимо для внутренних и внешних подключений.
  • Для открытия файла установим текстовый редактор «nano»
sudo apt install nano     
sudo nano /var/lib/pgpro/1c-15/data/postgresql.conf
-10

Помимо снятия ограничений на "прослушивание" нужно задать разрешение на подключение к нашим базам. Для этого откроем редактором файл «pg_hba.conf». Если вам необходим доступ любых локальных пользователей к базам, то по-умолчанию ключевые строки уже будут заданы (обведём их цветом).

sudo nano /var/lib/pgpro/1c-15/data/pg_hba.conf

Внутри файла содержатся строки разрешения с параметрами:

  1. «local/host» - задает правила для подключения, либо по локальным UNIX-сокетам, либо по TCP/IP
  2. «DATABASE» - база, к которой разрешаем доступ
  3. «USER» - какой пользователь СУБД будет иметь доступ
  4. «ADDRES» - адрес откуда подключаемся
  5. «METHOD» - метод аутентификации/проверки подключения
-11

3. Перезагружаем после настройки

После внесения изменений в конфигурационные файлы необходимо произвести перезагрузку.

sudo systemctl restart postgrespro-1c-15

Установка pgAdmin4

Т.к. у нас сервер с "графикой", то мы можем себе позволить установить утилиту с графическим окружением для удобного обслуживания наших баз данных. Для этого установим «pgAdmin4»:
1. Установим публичный ключ

sudo wget https://www.pgadmin.org/static/packages_pgadmin_org.pub
sudo apt-key add packages_pgadmin_org.pu

2. Добавим в файл «pgadmin4.list» ссылку на репозиторий. Если терминал будет ругаться "отказано в доступе", просто выполните строку от root

sudo echo "deb https://ftp.postgresql.org/pub/pgadmin/pgadmin4/apt/$(lsb_release -cs) pgadmin4 main" > /etc/apt/sources.list.d/pgadmin4.list
-13

3. Обновляем список пакетов и устанавливаем pgAdmin4:

sudo apt update
sudo apt install pgadmin4

4. Подключим наш PostgresSQL в программе. Для этого добавим сервер:

  • На вкладке «General» в реквизите «Name» - зададим имя для нашего кластера серверов. Например «pgServ»
  • На вкладке «Connection» - содержатся данные для подключения к серверу. Оставьте всё по умолчанию, заполнить нужно лишь поле пароль для нашего пользователя «postgres», который мы задавали после установки PostgresSQL.
-15
 
 

5. Если вы с самого начала использовали примеры из нашей инструкции, то вы попадёте в панель управления сервером баз данных.

Создание базы данных

И наконец, окончательно удостоверимся в том, что наша система управления базами данных готова к работе. А для этого заведем новую базу. Т.к. мы еще не установили «сервер 1С» на наш сервер под управлением Linux (сделаем это в другой статье), то воспользуемся консолью серверов 1С расположенной на другой машине.

-17

База успешно создана и добавлена в список нашего сервера

Заключение

Вновь можно сделать вывод, что не так страшен Linux и его обслуживание, как это может показаться на первый взгляд. В результате мы установили СУБД PostgreSQL и добавили утилиту для управления базами данных через графический интерфейс pgAdmin4. Мы продолжим "обустраивать" наш сервер для использования 1С, но уже в следующих статьях: установим сервер предприятия 1С, активируем лицензии, произведем публикацию на веб-сервере Apache и многое другое :)