1С — настройка PostgreSQL 11.9 на сервере Windows Server 2019

Установка и настройка 1С на Debian с PostgreSQL

Возможность сэкономить на дорогих лицензиях от Microsoft побуждает многие компании искать альтернативные варианты запуска 1С. Сегодня расскажу об одной из таких альтернатив — установке и настройке сервера 1С на Linux (Debian) в связке с базой данных PostgreSQL. Я не просто покажу, как запустить 1С на Linux, но и поделюсь полной информацией по эксплуатации этой системы, так как имею подобный опыт.

Если у вас есть желание научиться строить и поддерживать высокодоступные и надежные системы, рекомендую познакомиться с онлайн-курсом «DevOps практики и инструменты» в OTUS. Курс не для новичков, для поступления нужно пройти вступительный тест.

Что лучше: MSSQL или PostgreSQL?

Сложно сказать. С одной стороны, крутые исследователи заявляют о том, что правильно настроенный PostgreSQL выигрывает у MSSQL:

И тут я такой: «А если поднять у MSSQL tempdb в RAM диск?» И снова становится непонятно. Но понятно одно, MSSQL стоит денег, а PostgreSQL бесплатный.

Итак, тестовый стенд (или правильнее сказать, реальный?):

  • Сервер, виртуальный, операционная система Windows Server 2019 Standard, триальная.
  • CPU: 16 ядер
  • ОЗУ: 64 ГБ
  • Диск SSD, отдельный для БД.
  • Размер базы: 50 Гб
  • 1С 8.3 и PostgreSQL 11.9-1.1C вместе на одном сервере
  • 50 аккаунтов пользователей 1С в настоящее время

По хорошему, мух следует отделять от котлет. И разносить 1С и БД на разные серверы. Однако, на практике, часто бывает иначе. Сервер имеется один, на нём размещают и базу и сервер 1С. И это не просто предположение, вчера привезли новый сервер и поставили задачу: установить Windows, MSSQL и 1С. Всё на одну машину. Но это немного другая история, не связанная с текущей.

Установка PostgreSQL в стандартном виде, достаточном для запуска 1С без дополнительных настроек

Выбираем русский язык и двигаемся дальше.

2012-10-31_1546.png

Пока все просто, «далее».

2012-10-31_1546_001.png

Опции установки можно не менять, 1С работать будет. Далее.

2012-10-31_1547.png

Postgre, как и сервер 1С, может сам создать пользователя, под которым будете запускаться служба. Обращаю ваше внимание на то, что если указать учетную запись с правами администратора, то служба корректно работать не будет. Обязательно создавайте нового пользователя.

2012-10-31_1547_001.png

Следующее окно установки.

2012-10-31_1548.png

Инициализируем кластер. Если у нас сервер баз данных и сервер приложений 1С находятся на разных компьютерах, тогда устанавливаем галочку «Поодерживать подсоединения с любых IP», иначе не трогаем. Обязательно указываем кодировку UTF8. Создаем суперпользователя СУБД. Далее…

2012-10-31_1551.png

2012-10-31_1552.png

2012-10-31_1552_001.png

Уже почти все. Далее.

2012-10-31_1604.png

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

Результат наших усилий — готовый к работе PostgreSQL. Если нас устраивает, что базы будут лежать в Program FilesPostgreSQL9.1.2-1.1Cdata — заканчиваем на этом, раскрываем базы и наслаждаемся процессом. Однако, чаще все-таки базы данных «лежат» на специально предназначенных для этого дисковых массивах, а не на системном диске. Для того, чтобы настроить расположение данных, перед установкой прочитайте следующий раздел.

Сервер баз данных не обнаружен
could not translate host name «NAME» to address: Temporary failure in name resolution

1cv8-pgsql-error-004.jpg

На первый взгляд ошибка понятна: клиент не может разрешить имя сервера СУБД, типичная ошибка для небольших сетей, где отсутствует локальный DNS-сервер. В качестве решения добавляют запись в файл hosts на клиенте, что не дает никакого результата.

А теперь вспоминаем, о чем было сказано несколько раньше. Клиентом сервера СУБД является сервер 1С, но никак не клиентский ПК, следовательно запись нужно добавлять на сервере 1С:Предприятие в файл /etc/hosts на платформе Linux или в C:WindowsSystem32driversetchosts на платформе Windows.

1cv8-pgsql-error-005.jpg

Аналогичная ошибка будет возникать, если вы забыли добавить запись типа A для сервера СУБД на локальном DNS-сервере.

Установка зависимостей для PostgreSQL

10)Удаление пакета PostgreSQL

11)Ошибки при установке PostgreSQL
dpkg: зависимости пакетов не позволяют настроить пакет postgresql-10:
postgresql-10 зависит от postgresql-common (>= 182~), однако:
Пакет postgresql-common не установлен.
postgresql-10 зависит от ssl-cert, однако:
Пакет ssl-cert не установлен.
postgresql-10 зависит от libicu55 (>= 55.1-1~), однако:
Пакет libicu55 не установлен.
dpkg: ошибка при обработке пакета postgresql-10 (—install):
проблемы зависимостей — оставляем не настроенным
dpkg: зависимости пакетов не позволяют настроить пакет postgresql-client-10:
postgresql-client-10 зависит от postgresql-client-common (>= 182~), однако:
Пакет postgresql-client-common не установлен.
dpkg: ошибка при обработке пакета postgresql-client-10 (—install):
проблемы зависимостей — оставляем не настроенным
Обрабатываются триггеры для libc-bin (2.27-3ubuntu1) …
При обработке следующих пакетов произошли ошибки:
postgresql-10
postgresql-client-10
http://infostart.blog-buh.ru/public/502542/

12)Проверка работы сервиса PostgreSQL:

● postgresql.service — PostgreSQL RDBMS
Loaded: loaded (/lib/systemd/system/postgresql.service; enabled; vendor prese
Active: active (exited) since Wed 2018-08-22 19:15:16 UTC; 4min 49s ago
Main PID: 23794 (code=exited, status=0/SUCCESS)
Tasks: 0 (limit: 4636)
CGroup: /system.slice/postgresql.service

авг 22 19:15:16 srv-db systemd[1]: Starting PostgreSQL RDBMS…
авг 22 19:15:16 srv-db systemd[1]: Started PostgreSQL RDBMS.
13)Проверка порта tcp 5432 PostgreSQL

tcp LISTEN 0 128 0.0.0.0:5432 0.0.0.0:* users:((«postgres»,pid=25968,fd=3))
tcp LISTEN 0 128 [::]:5432 [::]:* users:((«postgres»,pid=25968,fd=6))

(Not all processes could be identified, non-owned process info
will not be shown, you would have to be root to see it all.)
tcp 0 0 0.0.0.0:5432 0.0.0.0:* LISTEN —
tcp6 0 0 . 5432 . * LISTEN

14)Аутентификация клиента postgresql контролируется конфигурационным файлом, который обычно
называется pg_hba.conf и хранится в каталоге кластера БД. (HBA означает host-based
authentication — аутентификацию на основе хоста.)

Какой ип сеть прослушивать tcp, звезда — все сетевые интерфейсы
/etc/postgresql/10/main/postgresql.conf

15)Добавление сервиса postgresql в автозагрузку

запуск сервиса postgresql

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

Восстановление БД Postgree

Для восстановления, выбираем базу, в которую хотим восстановить данные из резервной копии, желательно в пустую. Щелкаемся правой кнопкой и выбираем «Восстановление». Задаем файл бэкапа, имя роли: postgres, нажимаем «Восстановить»С помощью командной строки:

где, testdb — пустая база, в которую восстанавливается архив резервной копии.

Описание структуры сервиса

Для правильного функционирования сервиса должна быть описана его структура.

Настройки доступа

На вкладке «Администрирование» открываем «Настройки конфигурации» → «Настройки доступа», пропишем внешний и внутренний адреса менеджера сервиса и пароль для пользователя удаленного доступа RemoteAccess.

В качестве внешнего адреса будет fapache.knopka.int/ext/sm
В качестве внутреннего fapache.knopka.int/int/sm

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

Сегменты сервиса

На вкладке «Администрирование» открываем «Сегменты сервиса» и создаем новый сегмент. Назовем его «Локальная сеть».

Регистрация версий платформы 1С: Предприятие

В сервисе допускается использование нескольких кластеров серверов, использующих разные платформы. Каждую версию платформы нужно зарегистрировать в менеджере сервиса.
«Администрирование» → «Версии платформы 1С: Предприятие»

Регистрация серверов администрирования (ras)

«Администрирование» → «Серверы администрирования (ras)». Добавляем все серверы, где поднят ras, например:

Регистрация рабочих серверов

«Администрирование» → «Рабочие серверы». Добавим все наши рабочие серверы и учетную запись администратора рабочего сервера:

Регистрация кластера серверов

«Администрирование → Кластеры». Добавим кластеры и учетную запись администратора кластера:

Регистрация менеджера сервиса

«Администрирование → Конфигурации». Создаем новую конфигурацию, тип конфигурации для менеджера сервиса — «Управляющая». Имя конфигурации должно в точности совпадать с именем конфигурации в Конфигураторе.

В этом же окне в левой части выбираем «Версии конфигурации» и создаем новую запись, выбрав «Ввести информацию о версии вручную». Сейчас файл конфигурации можно не добавлять, это нужно только для обновления конфигурации на эту версию. Остальные поля заполняем так:

Теперь надо зарегистрировать информационную базу менеджера сервиса: «Администрирование → Информационные базы». Заполняем как на скриншоте, не забываем поставить галочку «на поддержке».

Далее заходим в «Администрирование → Менеджеры сервиса» и добавляем запись:

Возвращаемся в «Администрирование» открываем «Настройки конфигурации» → «Настройки доступа» и выберем в поле «Этот менеджер сервиса» наш менеджер сервиса.

На данный момент описание структуры сервиса можно закончить, к дополнительным настройкам веб-серверов и их групп вернемся позже, когда будет функционировать шлюз приложений.

Создание базы 1С на Постгри

Создание базы — очень простой процесс. В списке баз необходимо нажать «Добавить», выбрать пункт «Создание новой информационной базы», указать название базы и выбрать вариант расположения — «На сервере 1С: Предприятия», где заполнить настройки подобно указанным на скриншоте:

создание базы на новой СУБД

Где пароль и имя пользователя те, которые Вы указывали на этапе настройки кластера.

Вот и всё — можно работать с системой.

Другие статьи по 1С:

К сожалению, мы физически не можем проконсультировать бесплатно всех желающих, но наша команда будет рада оказать услуги по внедрению и обслуживанию 1С. Более подробно о наших услугах можно узнать на странице Услуги 1С или просто позвоните по телефону +7 (499) 350 29 00. Мы работаем в Москве и области.

Adblock
detector