К статье
Практический материал

Администрирование · 12 мин

Как развернуть серверную базу 1С

Пошаговое развертывание серверной базы 1С: установка СУБД и сервера 1С, создание базы, настройка прав, резервное копирование и типичные ошибки.

Серверный вариант работы 1С нужен, когда с базой одновременно работают больше 5–10 пользователей, объём данных растёт, а файловый режим начинает давать сбои: блокировки, медленные проведения документов, риск повреждения файла базы при обрыве сети. В клиент-серверной архитектуре данные хранит СУБД (PostgreSQL, MS SQL Server, Oracle или IBM Db2), а между ней и пользователями стоит сервер 1С:Предприятия, который обрабатывает запросы и управляет транзакциями.

Развертывание серверной базы состоит из четырёх крупных этапов: подготовка оборудования и операционной системы, установка СУБД, установка и настройка сервера 1С, создание информационной базы через консоль кластера и подключение пользователей. Каждый этап имеет свои подводные камни — от несовпадения версий платформы до неправильных настроек памяти СУБД.

Ниже разобран практический порядок действий на примере связки «сервер 1С + PostgreSQL» (самый распространённый вариант для небольших и средних компаний) и «сервер 1С + MS SQL Server». Последовательность шагов одинакова, различия — в установке и настройке самой СУБД.

Что понадобится перед началом работы

Для серверного развертывания потребуется выделенный компьютер или виртуальная машина. Минимальные ориентиры для небольшой базы (до 20–30 пользователей): 4–8 ядер процессора, 16–32 ГБ оперативной памяти, SSD-диски под базу данных. Точные требования зависят от конфигурации, числа пользователей и объёма данных — универсальных цифр нет, поэтому ресурсы лучше закладывать с запасом и следить за нагрузкой после запуска.

Из программного обеспечения понадобятся: дистрибутив сервера 1С:Предприятия (64-разрядный для современных версий), дистрибутив СУБД (для PostgreSQL рекомендуется сборка, адаптированная под 1С), лицензии — серверная лицензия 1С и клиентские лицензии на нужное число пользователей. Для PostgreSQL серверная лицензия 1С может быть льготной (версия «ПРОФ» и выше работает с PostgreSQL без доплаты за СУБД, но сама серверная лицензия обязательна).

Также заранее решите вопрос с учётной записью, под которой будет работать служба сервера 1С (по умолчанию создаётся пользователь USR1CV8), и с сетевыми портами: по умолчанию кластер использует порты 1540, 1541 и диапазон 1560–1591 для рабочих процессов. Эти порты должны быть открыты в брандмауэре между клиентами и сервером.

Установка и подготовка СУБД

Вариант с PostgreSQL

Для 1С требуется специальная сборка PostgreSQL с патчами — обычная сборка с официального сайта PostgreSQL не подойдёт, она не содержит нужных изменений. Дистрибутив адаптированной сборки публикуется на портале 1С и доступен по подписке ИТС. Установите PostgreSQL, задайте пароль суперпользователя postgres и запомните порт (по умолчанию 5432).

После установки проверьте, что служба PostgreSQL запущена и принимает подключения. Если сервер 1С и СУБД стоят на разных машинах, в файле pg_hba.conf нужно разрешить подключения с адреса сервера 1С, а в postgresql.conf — указать listen_addresses. При едином сервере (1С и СУБД на одной машине) эти настройки обычно не требуются.

Вариант с MS SQL Server

Для MS SQL Server установите экземпляр со смешанным режимом проверки подлинности (SQL Server and Windows Authentication) — 1С подключается к базе с указанием пользователя СУБД. Создайте отдельный логин для баз 1С с достаточными правами (обычно роль sysadmin на этапе развертывания либо права на создание баз данных) и включите протокол TCP/IP в конфигурации SQL Server.

Рекомендуется сразу задать ограничение максимального объёма памяти для SQL Server, иначе он может занять почти всю оперативную память, оставив систему и сервер 1С без ресурсов. Обычно оставляют несколько гигабайт под ОС и процессы сервера 1С.

Сравнение вариантов СУБД

PostgreSQL (сборка для 1С)

Подходит большинству небольших и средних компаний: бесплатная СУБД, достаточная производительность. Ограничение — требует специальной сборки и аккуратной настройки памяти и autovacuum.

MS SQL Server

Подходит при больших нагрузках и наличии администратора SQL. Ограничение — платные лицензии на СУБД, стоимость растёт с числом ядер.

Oracle / IBM Db2

Оправданы в крупных организациях с существующей инфраструктурой этих вендоров. Для типового развертывания избыточны по цене и сложности.

Установка сервера 1С:Предприятия

Запустите установщик платформы 1С на сервере и выберите компонент «Сервер 1С:Предприятия». Если планируется работа через веб-браузер или тонкий клиент по HTTP, дополнительно установите компонент «Модули расширения веб-сервера». Разрядность сервера должна быть 64-бит — 32-разрядный сервер ограничен по памяти и не подходит для рабочих систем.

При установке под Windows служба «Агент сервера 1С:Предприятия» регистрируется автоматически и запускается от имени пользователя USR1CV8 с паролем, который задаётся при установке. Не теряйте этот пароль — он понадобится при переустановке или переносе сервера. Убедитесь, что служба запущена: в оснастке «Службы» она должна быть в состоянии «Работает».

На Linux установка выполняется из пакетов дистрибутива платформы, после чего служба агента сервера запускается через systemd или init-скрипт. Проверьте, что пользователь, от имени которого работает агент, имеет доступ к каталогу служебных файлов кластера (по умолчанию это каталог srvinfo в домашней директории пользователя службы).

Порядок установки сервера 1С
  1. 1
    Установите платформу с компонентом «Сервер 1С:Предприятия» (64-bit)
  2. 2
    Задайте и сохраните пароль пользователя службы USR1CV8
  3. 3
    Убедитесь, что служба «Агент сервера 1С» запущена
  4. 4
    Откройте в брандмауэре порты 1540, 1541 и диапазон 1560–1591
  5. 5
    Проверьте доступность сервера с клиентской машины: telnet имя_сервера 1541

Создание информационной базы в кластере

Откройте консоль «Администрирование серверов 1С:Предприятия» на любой машине, где установлена платформа. Добавьте в консоль ваш сервер по имени или IP-адресу — в дереве появится кластер с рабочими процессами. Если консоль не видит сервер, проверьте, запущен ли агент сервера и не блокирует ли брандмауэр порт 1540.

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

Если у вас есть готовая выгрузка (.dt) из файловой базы или тестовой среды, загрузите её через конфигуратор: «Администрирование» → «Загрузить информационную базу». Для новой базы вместо загрузки выполните первоначальное заполнение данными по инструкции к конфигурации. После создания базы проверьте в консоли кластера, что она появилась в списке и не имеет блокировок.

Подключение пользователей и проверка работы

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

Заведите пользователей в конфигураторе («Администрирование» → «Пользователи») или через встроенные механизмы конфигурации, назначьте роли и права. Проверьте вход под обычным пользователем, а не только под администратором: частая ошибка — настроить всё под полными правами и забыть проверить ограниченные роли.

Для публикации базы через веб-сервер (если нужен доступ из браузера) установите веб-сервер (IIS или Apache), модули расширения веб-сервера 1С и выполните публикацию через конфигуратор: «Администрирование» → «Публикация на веб-сервере». После публикации проверьте открытие базы в браузере по ссылке вида http://сервер/имя_базы.

Контрольные точки

Как проверить результат

Служба агента сервера 1С
Норма

Служба запущена, в консоли кластера видны рабочие процессы

Тревожный признак

Служба остановлена или консоль показывает пустой кластер

Подключение клиента
Норма

База открывается в тонком клиенте без ошибок соединения

Тревожный признак

Ошибка «информационная база не обнаружена» или несовпадения версий

Работа с данными
Норма

Документы проводятся, отчёты строятся за приемлемое время

Тревожный признак

Частые ошибки блокировок, тайм-ауты, зависания

База в СУБД
Норма

База данных существует в СУБД, файлы данных растут

Тревожный признак

База отсутствует в СУБД или СУБД пишет ошибки в журнал

Резервное копирование и обслуживание

Главное отличие серверного режима: резервные копии делаются средствами СУБД, а не выгрузкой .dt. Настройте регулярный backup базы данных: для PostgreSQL — через pg_dump или физическое копирование с WAL-архивом, для MS SQL — через планы обслуживания (полная копия ежедневно, разностные или копии журнала транзакций чаще). Выгрузка .dt остаётся полезной для переноса базы между платформами и СУБД, но как единственное средство бэкапа не подходит — она медленная и требует монопольного доступа.

Регулярно проверяйте восстановление из копий на тестовом сервере — резервная копия, которую никогда не восстанавливали, нельзя считать рабочей. Также планируйте регламентные операции: обновление статистики и реиндексацию в СУБД, контроль свободного места на дисках, мониторинг журнала регистрации 1С на предмет ошибок.

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

Типичные ошибки при развертывании

Большинство проблем при переходе на серверный режим связаны не со сложностью технологии, а с невнимательностью на этапе подготовки. Разные версии платформы на сервере и клиентах, закрытые порты, недостаток памяти у СУБД и отсутствие бэкапов — классический набор причин неудачного запуска.

Отдельная группа ошибок — попытка сэкономить на инфраструктуре: размещение сервера 1С и СУБД на машине с перегруженным дисковым массивом, использование медленных HDD вместо SSD, работа без ИБП. Для базы, от которой зависит работа компании, такая экономия оборачивается простоями и потерей данных.

Типичные ошибки
01
Установка обычной сборки PostgreSQL вместо адаптированной под 1С — сервер 1С не сможет создать базу, возникнут ошибки при обращении к СУБД
02
Несовпадение версий платформы на сервере и клиентах — ошибки подключения и невозможность открыть базу
03
Отсутствие ограничения памяти MS SQL Server — СУБД занимает всю RAM, сервер 1С и система начинают тормозить
04
Развертывание без тестового контура — любая ошибка загрузки данных бьёт сразу по рабочей среде
05
Резервное копирование только через .dt — долгое создание копии, необходимость монопольного доступа, риск остаться без актуального бэкапа
06
Не открыты порты 1540–1591 в брандмауэре — клиенты не видят сервер, диагностика затягивается

Частые вопросы

Можно ли развернуть серверную базу 1С на одном компьютере с СУБД?

Да, для небольших компаний это нормальная практика: сервер 1С и СУБД работают на одной машине. Важно только, чтобы ресурсов (особенно оперативной памяти) хватало на оба процесса, и при необходимости ограничить память СУБД. При росте нагрузки СУБД и сервер 1С разносят на разные машины.

Как перенести существующую файловую базу в серверный режим?

Стандартный путь: в файловой базе сделать выгрузку в .dt (Конфигуратор → Администрирование → Выгрузить информационную базу), затем создать пустую серверную базу в кластере и загрузить в неё этот файл. После загрузки проверьте работу ключевых механизмов и обновите настройки подключения у пользователей. Прямого «конвертирования» файла базы в формат СУБД не существует.

Нужна ли отдельная лицензия на сервер 1С?

Да. Для работы сервера 1С:Предприятия требуется серверная лицензия соответствующего уровня (ПРОФ, КОРП и др.), плюс клиентские лицензии на пользователей. Исключение — некоторые поставки и учебные версии. Без серверной лицензии кластер запустится в ограниченном режиме и рабочие процессы не будут обслуживать сеансы.

Что делать, если консоль кластера не видит сервер?

Проверьте по порядку: запущена ли служба «Агент сервера 1С:Предприятия» на сервере; доступен ли сервер по сети (ping и telnet на порт 1541); не блокирует ли брандмауэр порты 1540–1541; совпадает ли версия консоли с версией сервера — консоль должна быть той же версии платформы, что и сервер.

Какую СУБД выбрать для небольшой компании?

Чаще всего оптимален PostgreSQL в адаптированной для 1С сборке: он бесплатен и при корректной настройке справляется с нагрузкой в десятки пользователей. MS SQL Server имеет смысл, если в компании уже есть лицензии и администратор этой СУБД или планируется высокая нагрузка. Выбор также может ограничиваться требованиями конкретной конфигурации.

Можно ли на одном сервере 1С держать несколько баз?

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

Итог

Что важно запомнить

Серверная база 1С разворачивается в четыре шага: подготовка сервера, установка адаптированной СУБД, установка сервера 1С и создание базы в кластере. Критичны совпадение версий платформы, открытые порты, достаточные ресурсы и резервное копирование средствами СУБД. Сначала всё проверяется на тестовом контуре — и только потом переносится в рабочую среду.