Серверная база 1С: от службы агента до входа пользователей

· 10 мин

Содержание

Чтобы подключить базу 1С на сервере, нужны три вещи: работающая служба агента сервера 1С 8.3, информационная база, зарегистрированная в кластере, и строка подключения на клиенте вида Srvr="имя_сервера";Ref="имя_базы";. Клиент находит агент по порту 1540, дальше его ведут менеджер кластера (1541) и рабочие процессы (по умолчанию 1560–1591).

Частое заблуждение — что достаточно положить файловую базу в общую папку на сервере. Это не клиент-серверный режим: так база остаётся файловой, просто лежит на другом компьютере. Настоящая серверная база хранится в СУБД (MS SQL Server или PostgreSQL), а пользователи работают с ней через кластер 1С.

Что подготовить на сервере до установки

Сначала проверьте окружение. Половину проблем при подключении создаёт не сама 1С, а сеть и права.

📌 Что нужно:

  • 🖥️ Сервер под Windows Server 2016 или новее либо под Linux. Ниже шаги для Windows, логика для Linux та же.
  • 🗄️ СУБД: MS SQL Server или PostgreSQL в сборке для 1С (обычный PostgreSQL без патчей 1С не подойдёт).
  • 🔑 Учётная запись СУБД с правом создавать базы: в MS SQL — роль dbcreator или sysadmin, в PostgreSQL — пользователь с правом CREATEDB (часто это postgres).
  • 📦 Дистрибутив платформы той же версии, что будет стоять на клиентах. Номер должен совпадать полностью, вплоть до последней цифры сборки.
  • 🎫 Лицензия на сервер 1С:Предприятия. Без неё рабочие процессы не примут подключения.
  • 🌐 Постоянное имя сервера в DNS или в файле hosts на каждом клиенте.

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

ПортЧто слушаетГде задаётся
1540Агент сервера (ragent)Параметры службы
1541Менеджер кластера (rmngr)Параметры службы и свойства кластера
1560–1591Рабочие процессы (rphost)Свойства рабочего сервера в консоли
1433 / 5432MS SQL / PostgreSQLНастройки СУБД (только если СУБД на другой машине)

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

Если на одной машине работают два кластера разных версий, у второго меняют все три параметра: порт агента, порт менеджера и диапазон. Например, 2540, 2541 и 2560:2591.

Установка сервера и запуск службы агента

Запустите setup.exe из дистрибутива серверной платформы (x86-64). В списке компонентов отметьте:

  1. «Сервер 1С:Предприятия 8».
  2. «Администрирование сервера 1С:Предприятия» — это консоль кластера.
  3. «1С:Предприятие 8» (толстый и тонкий клиент) — пригодится, чтобы загрузить базу прямо на сервере.

На следующем шаге установщик спросит, ставить ли сервер как службу Windows. Отметьте этот вариант и выберите пользователя. По умолчанию создаётся локальный USR1CV8. Если база данных будет на другой машине и вы используете доменную аутентификацию, лучше заранее завести доменную служебную учётку.

После установки проверьте службу в services.msc. Она называется «Агент сервера 1С:Предприятия 8.3 (x86-64)» (в английской локализации — 1C:Enterprise 8.3 Server Agent (x86-64)). Тип запуска — «Автоматически», состояние — «Выполняется».

В свойствах службы видна строка запуска. Примерно такая:

"C:\Program Files\1cv8\8.3.25.1374\bin\ragent.exe" -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d "C:\Program Files\1cv8\srvinfo" -debug

Здесь всё, что нужно знать о службе: порты, диапазон и каталог srvinfo, где кластер хранит свой реестр. У учётной записи службы должны быть права на запись в этот каталог.

Если служба стартует и сразу останавливается, первым делом проверьте права USR1CV8 на srvinfo и не занят ли порт 1540 другой программой: netstat -ano | findstr 1540.

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

Консоль кластера — оснастка MMC. Она не заработает, пока не зарегистрирована библиотека radmin.dll той же версии, что сервер. В меню «Пуск» есть ярлык «Регистрация утилиты администрирования серверов». Запустите его от имени администратора.

Тот же результат даёт команда:

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

Этот шаг повторяют после каждого обновления платформы на сервере. Иначе консоль либо не открывается, либо выдаёт ошибку несовпадения версий.

Регистрация базы 1С в кластере сервера

Откройте «Администрирование серверов 1С Предприятия». В дереве слева щёлкните правой кнопкой по корню «Central 1C:Enterprise 8.3 servers» и выберите создание нового центрального сервера. Укажите имя компьютера, протокол TCP и порт 1540.

В дереве появится сервер, под ним — «Кластеры», а в них — «Локальный кластер», который установщик создал сам. Дальше:

  1. Раскройте кластер, правой кнопкой по ветке «Информационные базы» → «Создать» → «Информационная база».
  2. Имя — как база будет называться в кластере. Латиница без пробелов, например buh_ooo_romashka. Это имя клиенты вписывают в поле «Имя информационной базы в кластере».
  3. Защищённое соединение — пока «выключено», к нему вернёмся ниже.
  4. Сервер баз данных — имя машины с СУБД. Для именованного экземпляра MS SQL: SQLSRV\INSTANCE.
  5. Тип СУБД — MSSQLServer или PostgreSQL.
  6. База данных — имя базы в СУБД. Удобно делать его равным имени в кластере.
  7. Пользователь сервера БД и Пароль — та самая учётка с правом создавать базы.
  8. Смещение дат — для MS SQL ставят 2000, для PostgreSQL оставляют 0.
  9. Флажок «Создать базу данных в случае её отсутствия» — включите, если базы в СУБД ещё нет.
  10. Флажок «Разрешить выдачу лицензий сервером 1С:Предприятия» — включите, если клиентские лицензии стоят на сервере, а не на рабочих местах.

Нажмите ОК. Если что-то не так с СУБД, ошибка появится сразу: консоль пробует подключиться к базе в момент создания.

Как перенести в серверную базу существующие данные

Пустая база ещё не рабочая. Данные из файловой или другой серверной базы переносят выгрузкой .dt:

  1. В исходной базе: Конфигуратор → Администрирование → Выгрузить информационную базу.
  2. Подключитесь к новой серверной базе в Конфигураторе (как добавить её в список — в разделе про клиент).
  3. Администрирование → Загрузить информационную базу, выберите файл .dt.

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

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

Настройки соединения и безопасности кластера

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

Администраторы

  • 👤 Администраторы центрального сервера — ветка «Администраторы» под самим сервером в консоли. Пока список пуст, управлять агентом может любой.
  • 👥 Администраторы кластера — ветка «Администраторы» внутри кластера. Они управляют базами, сеансами, рабочими процессами.

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

Запишите пароли администраторов в хранилище паролей компании. Если пароль кластера потерян, сбрасывать его придётся остановкой службы и восстановлением файлов реестра кластера из резервной копии. Остановка службы обрывает все сеансы пользователей — делайте это вне рабочего времени.

Параметры конкретной базы

В свойствах информационной базы (двойной щелчок по ней в консоли) есть настройки, которые нужны в работе:

ПараметрЗачем
Защищённое соединениеШифрование трафика между клиентом и сервером. Режим «только соединение» шифрует установку связи, «постоянно» — весь обмен
Блокировка начала сеансовНе пускает новых пользователей на время обновления. Можно задать время и текст сообщения
Код разрешенияПароль, который позволяет администратору зайти при включённой блокировке
Блокировка регламентных заданийОтключает фоновые задания. Обязательно для копии рабочей базы, чтобы она не отправляла отчёты и не качала банк
Разрешить выдачу лицензий серверомБрать клиентские лицензии с сервера

Не путайте администраторов кластера с пользователями самой базы. Список пользователей ведётся внутри конфигурации: в Конфигураторе или в разделе администрирования прикладного решения.

Права в СУБД

Учётка с sysadmin удобна для создания, но в работе лишняя. После создания базы можно оставить кластеру пользователя СУБД с ролью db_owner только на свою базу. Тогда ошибка в одной базе не тронет соседние.

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

На рабочем месте должна стоять платформа той же версии, что и на сервере. Затем:

  1. Запустите 1С, в окне запуска нажмите «Добавить».
  2. Выберите «Добавление в список существующей информационной базы».
  3. Введите понятное пользователю название, например «Бухгалтерия Ромашка».
  4. Тип расположения — «На сервере 1С:Предприятия».
  5. Кластер серверов 1С:Предприятия — имя сервера. Если кластер на нестандартном порту, указывают порт менеджера: SRV1C:2541.
  6. Имя информационной базы в кластере — точно то имя, что задано в консоли (buh_ooo_romashka).
  7. Режим запуска и версию оставьте по умолчанию, нажмите «Готово».

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

"C:\Program Files\1cv8\common\1cestart.exe" ENTERPRISE /S "SRV1C\buh_ooo_romashka"

Для большого числа рабочих мест список баз раздают общим файлом .v8i. Его подключают в настройках окна запуска как общий список. Тогда новую базу добавляют один раз, и она появляется у всех.

Если клиентов разной разрядности или версий

Клиент 32 или 64 бита — неважно, он может работать с 64-битным сервером. А вот номер версии платформы должен совпадать с сервером. Когда после обновления сервера клиенты не входят, причина почти всегда в этом.

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

Почему не подключается: диагностика и журналы

Проверяйте снизу вверх: сеть → служба → кластер → СУБД → лицензии.

Сеть и имя сервера

Самая частая проблема — клиент не может разрешить имя сервера. Агент возвращает клиенту адрес рабочего процесса по тому имени, под которым рабочий сервер записан в кластере. Если клиент подключается по IP, а в кластере сервер записан как SRV1C, клиенту всё равно нужно знать SRV1C.

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

Test-NetConnection SRV1C -Port 1540
Test-NetConnection SRV1C -Port 1541
Test-NetConnection SRV1C -Port 1560

Если имя не разрешается, а DNS поправить нельзя, добавьте строку в C:\Windows\System32\drivers\etc\hosts на клиенте:

192.168.10.15    SRV1C

Порт 1560 отвечает, только когда запущен хотя бы один рабочий процесс. Если 1540 и 1541 открыты, а 1560 нет — смотрите брандмауэр сервера и свойства рабочего сервера.

Сообщения об ошибках и что они значат

Диагностика: выберите симптом

Где смотреть журналы

  • 📋 Журнал событий Windows → «Приложение». Агент и менеджер кластера пишут туда ошибки запуска.
  • 🧾 Технологический журнал — включается файлом logcfg.xml в каталоге conf платформы (C:\Program Files\1cv8\conf\). Пишет подробно всё, что происходит с соединениями, но быстро растёт. Включайте на время диагностики и задавайте срок хранения.
  • 📒 Журнал регистрации базы — в самой 1С. Полезен, когда клиент уже вошёл, но падает при работе.
  • 🖥️ Консоль кластера → ветки «Сеансы» и «Соединения». Видно, кто сидит в базе и занимает лицензии.

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

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

Можно ли держать 1С и СУБД на разных серверах?
Да. В свойствах базы в кластере указывается любой сервер баз данных. Нужна быстрая сеть между ними и открытый порт СУБД.
Сколько баз можно зарегистрировать в одном кластере?
Жёсткого ограничения на число баз нет. Ограничивают ресурсы сервера и лицензии на одновременные сеансы.
Можно ли подключиться к серверной базе через интернет?
Открывать порты 1540–1591 наружу не стоит. Для удалённой работы используют VPN, терминальный сервер или публикацию базы на веб-сервере.
Чем серверная база лучше файловой в общей папке?
Она выдерживает десятки одновременных пользователей, не страдает от обрывов сети так, как файл 1Cv8.1CD, и позволяет делать резервные копии средствами СУБД без остановки работы.
Нужно ли переустанавливать клиентов при обновлении платформы на сервере?
Да, версии должны совпадать. Удобно настроить автоматическое обновление клиентов через общий каталог дистрибутива в настройках окна запуска.