Администрирование · 11 мин
Как создать базу данных 1С в PostgreSQL
Пошаговая инструкция по созданию базы данных 1С на PostgreSQL: установка СУБД, настройка сервера 1С, создание кластера и информационной базы, типичные ошибки.
Работа 1С:Предприятия в клиент-серверном режиме на PostgreSQL — стандартное решение для организаций, где с базой одновременно работают несколько пользователей и объём данных не позволяет использовать файловый вариант. PostgreSQL привлекает отсутствием лицензионных платежей за СУБД, но требует корректной установки специальной сборки и точной настройки связки «сервер 1С — СУБД».
Процесс создания базы состоит из четырёх этапов: установка PostgreSQL для 1С, установка сервера 1С:Предприятия, создание информационной базы через консоль кластера или конфигуратор и проверка подключения. Ошибка на любом из этапов приводит к невозможности создать базу или к нестабильной работе в дальнейшем, поэтому важно выполнять действия последовательно и проверять результат на каждом шаге.
Ниже разобраны требования к версиям, порядок установки, параметры создания базы и типичные ошибки, с которыми сталкиваются администраторы при первом развёртывании этой связки.
Что потребуется перед началом работы
Для развёртывания понадобятся три компонента: платформа 1С:Предприятие, сервер 1С (агент сервера) и PostgreSQL. Важно, что для 1С подходит не любая сборка PostgreSQL, а специально модифицированная — её распространяет сама фирма «1С» и партнёры. Обычная сборка с официального сайта PostgreSQL не будет корректно работать с платформой из-за отличий в обработке типов данных и сортировки.
Разрядность компонентов должна совпадать: если сервер 1С установлен 64-разрядный, то и PostgreSQL должен быть x64. Смешение разрядностей — одна из самых частых причин ошибки «СУБД не обнаружена» при создании базы. Также проверьте совместимость версий: конкретный релиз платформы 1С поддерживает определённый диапазон версий PostgreSQL, эта информация указана в документации к платформе.
Убедитесь, что у вас есть права администратора на сервере, свободное место на диске с запасом под рост базы и сетевое имя или IP-адрес сервера, если компоненты ставятся на разные машины. Для тестовой установки все компоненты допустимо разместить на одном компьютере.
Установка и первичная настройка PostgreSQL для 1С
Скачайте дистрибутив PostgreSQL, предназначенный для работы с 1С, и запустите установщик. В процессе установки укажите каталог данных, задайте пароль суперпользователя postgres и сохраните стандартный порт 5432, если он не занят другой СУБД. Пароль пользователя postgres обязательно запишите — он потребуется при создании информационной базы.
После установки проверьте, что служба PostgreSQL запущена. На Windows это делается через оснастку «Службы», на Linux — командой проверки статуса службы. Если служба не стартует, чаще всего причина в занятом порте или недостаточных правах на каталог данных.
sudo systemctl status postgresql-15Для производительной работы рекомендуется скорректировать параметры в файле postgresql.conf: увеличить shared_buffers (обычно до 25–30% оперативной памяти сервера), настроить work_mem и effective_cache_size под доступную память. Точные значения зависят от объёма ОЗУ и числа пользователей; не задавайте агрессивные значения наугад — это может ухудшить стабильность СУБД.
Установка сервера 1С:Предприятия
Запустите установку платформы 1С и выберите компоненты «Сервер 1С:Предприятия» и «Администрирование сервера 1С:Предприятия» (консоль кластера). На Windows сервер 1С обычно устанавливается как служба, работающая под специальной учётной записью (по умолчанию USR1CV8) — у этой записи должны быть права на каталог служебных файлов сервера.
После установки откройте консоль администрирования серверов 1С и убедитесь, что центральный сервер виден и в нём существует кластер с рабочими процессами. Если консоль не видит сервер, проверьте, запущена ли служба агента сервера 1С и не блокирует ли брандмауэр порты 1540, 1541, 1560–1591, используемые платформой.
Если PostgreSQL и сервер 1С установлены на разных машинах, проверьте сетевую доступность порта 5432 с сервера 1С и разрешите подключения в файле pg_hba.conf на стороне СУБД, добавив строку для подсети сервера 1С с методом аутентификации md5 или scram-sha-256.
Создание информационной базы
Создать базу можно двумя способами: через консоль кластера серверов 1С или через конфигуратор на клиентской машине. Оба пути приводят к одному результату — платформа создаёт пустую базу в PostgreSQL и регистрирует её в кластере.
- 1Откройте консоль администрирования серверов 1С и разверните нужный кластер
- 2Щёлкните правой кнопкой по ветке «Информационные базы» и выберите «Создать»
- 3Задайте имя базы, тип СУБД — PostgreSQL, укажите сервер СУБД и имя базы данных
- 4Введите пользователя СУБД postgres и его пароль, установите флаг «Создать базу данных в случае её отсутствия»
- 5Нажмите «ОК» и дождитесь завершения создания без сообщений об ошибках
При создании через конфигуратор запустите клиент 1С, в стартовом окне нажмите «Добавить», выберите «Создание новой информационной базы», затем вариант «на сервере 1С:Предприятия». Далее укажите имя кластера, имя базы, тип СУБД PostgreSQL, адрес сервера СУБД и учётные данные postgres. Платформа сама создаст базу в PostgreSQL и выполнит первичную инициализацию.
Имя базы данных в PostgreSQL задавайте латинскими буквами без пробелов и спецсимволов — это избавит от проблем с экранированием имён при обслуживании. Не создавайте базу вручную через pgAdmin или psql с последующим подключением: платформа должна создать базу сама, чтобы корректно выставить параметры и структуру.
Проверка результата и загрузка конфигурации
После создания базы откройте её в конфигураторе. Если база пустая, платформа предложит загрузить конфигурацию из файла .dt (выгрузка информационной базы) или .cf (файл конфигурации). Загрузка .dt — стандартный способ перенести существующую базу из файлового варианта или с другого сервера.
Для загрузки .dt выберите в меню «Администрирование» пункт «Загрузить информационную базу» и укажите файл. На больших базах процесс занимает продолжительное время — не прерывайте его, так как прерванная загрузка оставляет базу в нерабочем состоянии и потребует повторного создания.
Как проверить результат
База отображается в списке информационных баз без ошибок
База отсутствует или при раскрытии возникает ошибка соединения с СУБД
Конфигуратор открывается, конфигурация загружена
Ошибка аутентификации СУБД или «информационная база не обнаружена»
Пользователь входит, справочники и документы открываются
Ошибки при обращении к данным, зависания на старте
После загрузки данных создайте пользователей и назначьте им права, затем проверьте вход в режиме «1С:Предприятие» с клиентской машины. Убедитесь, что типовые операции — открытие списков, проведение документов — выполняются без ошибок и с приемлемой скоростью.
Типичные ошибки и их устранение
Если при создании базы появляется ошибка «Ошибка СУБД: база данных не пригодна для использования с 1С:Предприятием», почти наверняка установлена неподходящая сборка PostgreSQL либо не совпадает версия. Удалите СУБД, установите правильную сборку и повторите создание.
Ошибки вида «server closed the connection unexpectedly» при работе пользователей обычно указывают на нехватку памяти или слишком агрессивные настройки postgresql.conf. Верните параметры к умеренным значениям и наблюдайте за логами PostgreSQL — в них видно, по какой причине завершается соединение.
Альтернативы и ограничения связки 1С + PostgreSQL
PostgreSQL — не единственный вариант СУБД для 1С. Платформа также поддерживает Microsoft SQL Server, Oracle Database и IBM Db2. Выбор зависит от бюджета, компетенций администраторов и требований к масштабированию.
Сравнение вариантов СУБД для 1С
Бесплатная СУБД, подходит большинству организаций малого и среднего размера. Требует специальной сборки и ручной настройки параметров
Платная лицензия, но тесная интеграция с Windows-инфраструктурой и привычные инструменты администрирования. Часто выбирают, если в компании уже есть администратор MS SQL
Подходит для 1–5 пользователей и небольших баз. Не требует сервера 1С и СУБД, но ограничен по производительности и надёжности
Учитывайте ограничение: сервер 1С на Windows работает с PostgreSQL на той же машине или отдельном сервере, а для Linux-развёртываний потребуется Linux-версия платформы. Также некоторые механизмы обслуживания (например, регламентные операции с индексами) в PostgreSQL выполняются иначе, чем в MS SQL, и требуют отдельного регламента.
Как выбрать действие
Часто задаваемые вопросы
Можно ли использовать обычный PostgreSQL с официального сайта?
Нет, для 1С требуется модифицированная сборка PostgreSQL, адаптированная под особенности платформы. С обычной сборкой база либо не создастся, либо будет работать с ошибками, поэтому дистрибутив следует брать из источников, предоставляемых для пользователей 1С.
Какой пользователь нужен для создания базы в PostgreSQL?
При создании информационной базы указывается суперпользователь postgres с паролем, заданным при установке СУБД. Для повседневной работы можно настроить отдельного пользователя СУБД с ограниченными правами, но на этапе создания нужны права на создание базы данных.
Как перенести файловую базу 1С в PostgreSQL?
Откройте файловую базу в конфигураторе, выполните «Администрирование — Выгрузить информационную базу» в файл .dt. Затем создайте пустую базу на сервере 1С с типом PostgreSQL и загрузите в неё полученный .dt через «Загрузить информационную базу».
Ошибка «СУБД не обнаружена» при создании базы — что проверять?
Проверьте совпадение разрядности сервера 1С и PostgreSQL, запущена ли служба PostgreSQL, доступен ли порт 5432 с сервера 1С и установлена ли именно сборка PostgreSQL для 1С, а не стандартная.
Нужно ли отдельно оптимизировать PostgreSQL после установки?
Да, параметры по умолчанию рассчитаны на слабое оборудование. Как минимум скорректируйте shared_buffers, work_mem и effective_cache_size под объём оперативной памяти сервера, а также настройте регулярное резервное копирование и мониторинг логов СУБД.
Что важно запомнить
База 1С на PostgreSQL создаётся в четыре шага: установка специальной сборки PostgreSQL, установка сервера 1С той же разрядности, создание информационной базы через консоль кластера или конфигуратор и проверка входа. Базу в PostgreSQL должна создавать сама платформа, а перед любыми изменениями конфигурации СУБД делайте резервные копии.