Новая информационная база в клиент-серверном варианте: СУБД, кластер, права и подключение

· 11 мин

Содержание

Чтобы создать базу 1С на сервере, нужны три готовых компонента: СУБД (PostgreSQL или MS SQL Server), установленный сервер 1С:Предприятия 8.3 с запущенной службой агента и лицензия на сервер. Саму базу создают либо из окна запуска 1С (Добавить → Создание новой информационной базы → На сервере 1С:Предприятия), либо в консоли администрирования серверов, либо командой rac infobase create. Во всех трёх случаях кластер 1С сам создаёт пустую базу данных в СУБД, если отмечен флажок «Создать базу данных в случае ее отсутствия».

Дальше — порядок развёртывания с нуля: от выбора железа до первого входа пользователя. Описан клиент-серверный вариант платформы 8.3 (сборки 8.3.2x) на Windows Server 2016 и новее или Linux.

Что проверить до начала: железо, ОС и лицензии

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

Ориентиры по ресурсам (примерно, для типовых БП, ЗУП, УТ):

ПользователейЯдра CPUОЗУДиск
до 10416 ГБSSD от 256 ГБ
10–306–832 ГБNVMe, отдельный диск под СУБД
30–7012–1664 ГБNVMe RAID 1/10

Главное узкое место 1С — диск и частота процессора, а не число ядер. Один медленный HDD под базой даёт больше жалоб, чем нехватка памяти.

Перед установкой убедитесь:

  • ✅ есть лицензия на сервер 1С (32- или 64-разрядный, в зависимости от редакции) и клиентские лицензии на нужное число рабочих мест;
  • ✅ у сервера постоянный IP-адрес и имя, которое резолвится со всех клиентских машин;
  • ✅ на клиентах будет стоять та же сборка платформы, что на сервере: клиент 8.3.24.1586 не подключится к серверу 8.3.24.1548;
  • ✅ выбрана ОС: Windows Server или один из поддерживаемых дистрибутивов Linux (Ubuntu, Debian, Astra, РЕД ОС и др.).

Если базу переносите из файлового варианта, заранее выгрузите её в .dt через Конфигуратор: Администрирование → Выгрузить информационную базу. Этот файл потом загрузите в новую серверную базу.

Установка и первичная настройка СУБД

Для 1С подходят четыре СУБД: MS SQL Server, PostgreSQL, IBM Db2 и Oracle Database. На практике выбирают из первых двух.

СУБДКогда выбиратьНа что обратить внимание
PostgreSQL (сборка для 1С)Linux или Windows, экономия на лицензияхНужна именно сборка с патчами для 1С: Postgres Pro для 1С или дистрибутив с сайта поставщика платформы
MS SQL ServerWindows-инфраструктура, есть лицензииExpress-редакция ограничена объёмом базы 10 ГБ и годится только для теста

PostgreSQL

Обычный PostgreSQL из репозитория дистрибутива для 1С не годится: платформе нужны доработки (тип mchar, расширения fasttrun, fulleq). Ставьте сборку, рассчитанную на 1С, той версии, которую поддерживает ваша платформа.

После установки:

  1. Задайте пароль пользователю postgres или создайте отдельную роль с правом создания баз.
  2. В pg_hba.conf разрешите подключение с адреса сервера 1С (если он на другой машине).
  3. В postgresql.conf задайте listen_addresses и параметры памяти.
  4. Перезапустите службу PostgreSQL.
CREATE ROLE usr1c WITH LOGIN SUPERUSER PASSWORD 'СложныйПароль';

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

MS SQL Server

  1. При установке выберите смешанную аутентификацию (SQL Server и Windows) и задайте пароль sa.
  2. Создайте отдельный логин для 1С с ролью dbcreator или sysadmin.
  3. Ограничьте max server memory: если оставить по умолчанию, SQL займёт почти всю память и вытеснит процессы 1С.
  4. Откройте порт 1433 в брандмауэре, если 1С стоит на другом сервере.

Сервер 1С и кластер: служба, порты, консоль

Сервер 1С ставится тем же дистрибутивом платформы. В Windows при установке отметьте компоненты «Сервер 1С:Предприятия 8» и «Администрирование сервера 1С:Предприятия», включите установку как службы. Служба запускается от пользователя USR1CV8 (или от доменной учётной записи, если укажете её).

После старта служба агента сама создаёт кластер по умолчанию на порту 1541.

Порты, которые должны быть открыты между клиентами и сервером:

ПортКто слушаетЗачем
1540Агент сервера (ragent)Первичное обращение клиента и консоли
1541Менеджер кластера (rmngr)Работа с кластером
1560–1591Рабочие процессы (rphost)Основной обмен данными с клиентами
1545Сервер администрирования (ras)Для утилиты rac и консоли по сети

Диапазон 1560–1591 задаётся в свойствах рабочего сервера. Если сузили его — открывайте в брандмауэре именно тот диапазон, который указан там.

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

Частая проблема на Windows: консоль не открывается или показывает ошибку класса. Причина — не зарегистрирована библиотека radmin.dll той версии платформы, что стоит на сервере. Регистрируют её от имени администратора:

regsvr32 "C:\Program Files\1cv8\8.3.24.1548\bin\radmin.dll"

Номер сборки в пути замените на свой. Регистрировать нужно каждый раз после обновления платформы.

Linux

На Linux служба агента обычно называется по номеру сборки (например, srv1cv8-8.3.24.1548@default) или srv1cv83, в зависимости от способа установки. Для управления без графики запустите сервер администрирования ras и работайте утилитой rac. Проверка, что кластер жив:

rac cluster list

Как создать информационную базу на сервере 1С: три способа

Все способы создают одно и то же: запись о базе в реестре кластера и пустую базу данных в СУБД.

Способ 1. Из окна запуска 1С

Самый простой путь — с любой машины, где стоит клиент той же сборки.

  1. Откройте 1С:Предприятие и нажмите Добавить.
  2. Выберите «Создание новой информационной базы».
  3. Отметьте «Создание информационной базы без конфигурации» (потом загрузите .dt или .cf) либо выберите шаблон конфигурации.
  4. Укажите имя базы в списке и вариант «На сервере 1С:Предприятия».
  5. Заполните параметры:
    • Кластер серверов 1С:Предприятия — имя сервера (если кластер не на порту 1541, через двоеточие: srv1c:1641);
    • Имя информационной базы в кластере — латиницей, без пробелов, например buh_2026;
    • Тип СУБД — PostgreSQL или MS SQL Server;
    • Сервер баз данных — имя или адрес сервера СУБД;
    • Имя базы данных — имя в СУБД (удобно делать таким же);
    • Пользователь и пароль сервера БД — роль, созданная на прошлом шаге;
    • Смещение дат — для MS SQL ставьте 2000, для PostgreSQL оставьте 0;
    • флажок «Создать базу данных в случае ее отсутствия» — включите.
  6. Нажмите Далее и Готово.

Флажок «Установить блокировку регламентных заданий» включайте для копий рабочей базы. Иначе копия начнёт загружать банк-выписки, отправлять письма и обмениваться с сайтом вместо основной базы.

Способ 2. Через консоль администрирования

  1. Откройте «Администрирование серверов 1С Предприятия».
  2. Разверните Central 1C:Enterprise 8.3 servers → <ваш сервер> → Кластеры → <кластер>.
  3. На узле «Информационные базы» вызовите контекстное меню Создать → Информационная база.
  4. Заполните те же поля, что в способе 1, и отметьте «Создать базу данных в случае ее отсутствия».

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

Способ 3. Командой rac

Подходит для Linux и скриптов. Сначала узнайте идентификатор кластера через rac cluster list, затем:

rac infobase --cluster=<uuid-кластера> create \
  --create-database --name=buh_2026 \
  --dbms=PostgreSQL --db-server=localhost \
  --db-name=buh_2026 --db-user=usr1c --db-pwd='СложныйПароль' \
  --locale=ru --license-distribution=allow

Если что-то из параметров не принимается вашей версией, полный список выводит rac help infobase.

Загрузка данных в пустую базу

Созданная база пустая. Откройте её в Конфигураторе и выберите:

  • Администрирование → Загрузить информационную базу — для .dt-выгрузки (данные + конфигурация);
  • Конфигурация → Загрузить конфигурацию из файла — для чистого .cf, затем «Обновить конфигурацию базы данных».

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

Права доступа: кто и что может на сервере

На сервере 1С три уровня доступа, и путают их постоянно.

  • 🔐 Администраторы центрального сервера — могут создавать кластеры и менять настройки агента. Задаются в узле «Администраторы» центрального сервера.
  • 🔐 Администраторы кластера — создают и удаляют базы, завершают сеансы. Пока никого не добавили, управлять кластером может любой, кто доберётся до порта 1540. Добавьте хотя бы одного.
  • 🔐 Пользователи информационной базы — задаются внутри самой базы: в Конфигураторе Администрирование → Пользователи или в режиме Предприятия Администрирование → Настройки пользователей и прав.

Отдельно — права служебных учётных записей:

  • 🛡️ учётная запись службы 1С (USR1CV8) должна иметь права на каталог srvinfo и право входа как служба, но не нужна в группе администраторов;
  • 🛡️ пароль пользователя СУБД хранится в настройках базы в кластере, поэтому не используйте для 1С тот же пароль, что у sa или postgres;
  • 🛡️ для внешних обработок и отчётов в кластере есть профили безопасности: они ограничивают доступ кода к файлам, сети и COM-объектам. Включайте их, если пользователи запускают сторонние обработки.

Если потеряли пароль администратора кластера, не пересоздавайте кластер. Остановите службу агента (все сеансы пользователей оборвутся, делайте это вне рабочего времени), восстановите файл реестра кластера из каталога srvinfo из резервной копии и запустите службу снова.

Безопасность сервера после создания базы
Выполнено: 0 / 6

Производительность: что настроить сразу

Типовые значения кластера подходят для большинства случаев. Менять их стоит только при понятной проблеме. Но несколько вещей лучше настроить сразу.

PostgreSQL. В postgresql.conf:

  • shared_buffers — примерно 25% ОЗУ сервера (если на машине только СУБД);
  • effective_cache_size — около 50–75% ОЗУ;
  • work_mem — 32–64 МБ для типовых нагрузок 1С;
  • автоочистку (autovacuum) не отключайте: без неё таблицы распухают, и запросы замедляются.

MS SQL Server:

  • модель восстановления Simple, если не настроено резервное копирование журнала транзакций; иначе файл .ldf вырастет до размера диска;
  • регулярное обновление статистики и перестроение индексов через план обслуживания;
  • max server memory — оставьте 1С и ОС не меньше 4–8 ГБ.

Кластер 1С. В свойствах рабочего сервера можно ограничить объём памяти рабочих процессов и задать «Безопасный расход памяти за один вызов». Если памяти мало, рабочие процессы перезапускаются, а пользователи получают обрыв сеанса. Поэтому выставляйте пределы с запасом, а не впритык.

На одной машине с СУБД и 1С снимите ограничения энергосбережения: в Windows поставьте схему электропитания «Высокая производительность». Это заметно ускоряет проведение документов.

Резервные копии и мониторинг сервера

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

СпособКакПлюс
PostgreSQLpg_dump -Fc по расписанию (cron или планировщик)Не останавливает работу пользователей
MS SQLПлан обслуживания: полная копия раз в сутки, журнал — каждый часВосстановление на любой момент времени
Выгрузка .dtКонфигуратор или 1cv8 DESIGNER /DumpIBПереносимость между СУБД

Пример ежедневной копии PostgreSQL:

pg_dump -U usr1c -h localhost -Fc buh_2026 > /backup/buh_2026_$(date +%F).dump

Храните копии на другом диске или сервере и раз в месяц проверяйте восстановление на тестовую базу. Копия, которую ни разу не разворачивали, может оказаться битой.

Что мониторить:

  • 📊 сеансы и лицензии — в консоли, узел «Сеансы», или rac session list --licenses;
  • 📊 рабочие процессы — память и число соединений в узле «Рабочие процессы»;
  • 📊 технологический журнал — включается файлом logcfg.xml в каталоге conf платформы; пишите в него только нужные события, иначе он заполнит диск;
  • 📊 место на диске — под базой, журналами СУБД и каталогом srvinfo.

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

На клиентских машинах ставят платформу той же сборки, что на сервере. Затем:

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

Строка подключения в итоге выглядит так:

Srvr="srv1c";Ref="buh_2026";

Чтобы не настраивать каждый компьютер вручную, раздайте общий файл списка баз .v8i или пропишите его в 1CEStart.cfg параметром CommonInfoBases.

Первая проверка после подключения:

  1. Войдите в базу под пользователем с полными правами.
  2. Проведите любой документ и сформируйте отчёт — это проверит запись и чтение.
  3. Подключите второго пользователя с другого компьютера одновременно.
  4. В консоли убедитесь, что оба сеанса видны и лицензии выданы.
Диагностика: выберите симптом

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

Можно ли поставить сервер 1С и СУБД на один компьютер?
Да. Для небольших компаний это обычная схема: меньше задержек и проще обслуживание. Следите только, чтобы СУБД не забирала всю память.
Сколько баз можно создать в одном кластере?
Жёсткого ограничения нет. Десятки баз в одном кластере — нормальная практика, если хватает памяти и дисков.
Нужна ли отдельная лицензия на каждую базу?
Нет. Лицензия на сервер одна на компьютер с рабочим сервером, клиентские лицензии считаются по числу одновременных сеансов, а не по базам.
Можно ли перевести файловую базу на сервер без потерь?
Да. Выгрузите файловую базу в .dt, создайте пустую базу на сервере и загрузите в неё выгрузку через Конфигуратор.
Чем имя базы в кластере отличается от имени базы данных?
Имя в кластере видят клиенты при подключении. Имя базы данных — это имя в СУБД. Они могут не совпадать, но одинаковые имена упрощают администрирование.