Файловая база в сетевой папке и база в кластере 1С: подключение, права, ошибки

· 10 мин

Содержание

Базы 1С на сервере подключают двумя способами. Файловую базу кладут в общую папку и добавляют в список запуска по UNC-пути \\SRV\Bases\Buh. Клиент-серверную базу создают в кластере сервера 1С:Предприятия поверх MS SQL или PostgreSQL, а на рабочих местах добавляют строкой Srvr="SRV1C";Ref="buh";.

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

ВариантЧто нужно на сервереСтрока подключения в клиентеКогда выбирать
Файловая база по сетиОбщая папка, права «Изменение»File="\\SRV\Bases\Buh";Небольшой офис, одна-две базы
Клиент-серверСервер 1С + СУБД, лицензия сервераSrvr="SRV1C";Ref="buh";Много пользователей, крупные базы
Веб-публикацияIIS или Apache + модуль веб-расширенияws="http://srv/buh";Удалённые сотрудники, филиалы

1. Подготовка сервера к подключению баз 1С

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

Для файловой базы:

  • 🖥 Сервер или выделенный компьютер с Windows Server 2016 и новее (или обычная Windows для пары пользователей).
  • 📁 Отдельный диск или раздел под базы. Не держите их на системном диске рядом с профилями.
  • 🌐 Постоянный IP-адрес или имя, которое разрешается на всех клиентах.
  • 🛡 Антивирус с исключением для папки баз: проверка на лету файла 1Cv8.1CD сильно тормозит работу.

Для клиент-серверной базы дополнительно:

  • ⚙️ Установленный компонент «Сервер 1С:Предприятия» и служба агента сервера. Установщик предлагает создать пользователя USR1CV8, от имени которого работает служба.
  • 🗄 СУБД: Microsoft SQL Server или PostgreSQL в сборке с исправлениями для 1С. Сервер СУБД может стоять на той же машине или отдельно.
  • 🔑 Лицензия на сервер 1С:Предприятия и клиентские лицензии.
  • 🔢 Одинаковая версия платформы на сервере и на всех клиентах — до последней цифры номера сборки.

Порты, которые нужно открыть

Клиент сначала обращается к агенту сервера, затем к менеджеру кластера, затем к рабочим процессам. Если в брандмауэре открыт только один порт, соединение оборвётся на середине.

ПортКто слушаетОткуда открыть
1540Агент сервера (ragent)Клиенты, консоль администрирования
1541Менеджер кластера (rmngr)Клиенты
1560–1591Рабочие процессы (rphost)Клиенты
1433MS SQL ServerТолько сервер 1С
5432PostgreSQLТолько сервер 1С

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

Порт СУБД клиентам не нужен. Пользователи работают с сервером 1С, а с базой данных разговаривает только он. Закройте 1433 и 5432 для всей сети, кроме сервера 1С, — это сразу снимает риск прямого доступа к таблицам.

Имя сервера должно разрешаться на клиенте

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

Решение — запись в DNS или строка в файле C:\Windows\System32\drivers\etc\hosts на клиенте:

192.168.10.15    SRV1C

2. Как подключить файловую базу 1С по сети

Файловая база — это папка с файлом 1Cv8.1CD. Подключить её с сервера значит открыть общий доступ к папке и прописать путь у каждого пользователя.

Шаг 1. Создайте общую папку

  1. На сервере создайте папку, например D:\Bases, и внутри — каталог базы D:\Bases\Buh.
  2. В свойствах папки на вкладке «Доступ» откройте общий доступ, имя ресурса — Bases.
  3. В разрешениях общего ресурса дайте группе пользователей 1С право «Изменение».
  4. На вкладке «Безопасность» (NTFS) дайте той же группе право «Изменение» на папку и вложенные объекты.

Права нужны на запись: при работе платформа создаёт в каталоге базы служебные файлы. С правом «Только чтение» база не откроется.

Шаг 2. Добавьте базу в список на рабочем месте

  1. Запустите 1С:Предприятие, в окне запуска нажмите «Добавить».
  2. Выберите «Добавление в список существующей информационной базы» → «Далее».
  3. Введите наименование, например «Бухгалтерия (сервер)».
  4. Тип расположения — «На данном компьютере или на компьютере в локальной сети».
  5. В поле каталога укажите \\SRV\Bases\Buh и нажмите «Далее», затем «Готово».

Указывайте путь через имя сервера, а не через букву сетевого диска. Диск Z: у одного пользователя может указывать в другое место у второго или вовсе не подключиться после перезагрузки. UNC-путь работает одинаково у всех.

Не открывайте файловую базу по сети через VPN с низкой скоростью или по Wi-Fi с обрывами. Обрыв во время записи может повредить файл 1Cv8.1CD. Для удалённых сотрудников используйте веб-публикацию или терминальный сервер.

3. Подключение клиент-серверной базы 1С на MS SQL или PostgreSQL

В клиент-серверном варианте база живёт в двух местах: таблицы — в СУБД, регистрация — в кластере сервера 1С. Создать базу можно из окна запуска или из консоли администрирования.

Создание базы из окна запуска

  1. В окне запуска нажмите «Добавить» → «Создание новой информационной базы».
  2. Выберите пустую базу или создание из шаблона конфигурации.
  3. Тип расположения — «На сервере 1С:Предприятия».
  4. Заполните параметры:
ПолеПримерПояснение
Кластер серверов 1С:ПредприятияSRV1CИмя сервера; при нестандартном порте кластера — SRV1C:2541
Имя информационной базы в кластереbuhЕго пользователи вводят при подключении
Защищённое соединениеВыключеноВключают при требованиях к шифрованию трафика
Тип СУБДMS SQL Server или PostgreSQL
Сервер баз данныхSQL01Имя сервера СУБД, видимое с сервера 1С
Имя базы данныхbuhИмя базы в СУБД
Пользователь базы данных / ПарольЛогин СУБДЛогин с правом создания баз
Смещение дат2000Для MS SQL Server; для PostgreSQL — 0
Создать базу данных в случае её отсутствияВключеноИначе база в СУБД должна уже существовать
  1. Галочку «Установить блокировку регламентных заданий» ставьте для копии рабочей базы. Иначе копия начнёт отправлять отчёты, загружать курсы и обмениваться данными наравне с рабочей.

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

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

Консоль не открывается или пишет об ошибке компоненты? Зарегистрируйте radmin.dll той версии, что стоит на сервере, из командной строки от имени администратора:

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

Номер версии в пути замените на свой.

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

Если база в кластере есть, на рабочем месте её только добавляют в список:

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

Перенос файловой базы на сервер

Частый сценарий — база выросла и её переводят с файлового варианта на клиент-серверный:

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

Выгрузка и загрузка требуют монопольного доступа: попросите пользователей выйти из обеих баз заранее.

4. Права доступа и безопасность серверных баз

Доступ к базам на сервере настраивают на трёх уровнях. Ошибка на любом из них даёт отказ в подключении.

УровеньЧто настраиваютГде
Операционная системаПрава на папку файловой базы; учётная запись службы USR1CV8Свойства папки, «Службы»
СУБДЛогин, под которым сервер 1С работает с базойSQL Server Management Studio, pgAdmin
Кластер 1САдминистраторы кластера и администраторы базКонсоль администрирования
Информационная базаПользователи 1С, роли, способ входаАдминистрирование → Настройки пользователей и прав

Несколько правил, которые избавляют от проблем:

  • 🔐 Для СУБД заведите отдельный логин под 1С вместо sa. Для создания баз ему нужна роль dbcreator, для работы с готовой базой — db_owner в этой базе.
  • 👤 Назначьте администратора кластера в консоли. Пока список администраторов пуст, управлять кластером может любой, кто подключится к порту 1540.
  • 🪪 Включите аутентификацию операционной системы для пользователей 1С: пользователь домена входит без отдельного пароля, а при увольнении достаточно отключить учётку в домене.
  • 📂 Учётной записи службы USR1CV8 дайте права на каталоги, куда сервер пишет журналы и выгрузки. Без этого фоновые задания падают с ошибкой доступа к файлу.

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

5. Ошибки подключения к серверу 1С и что с ними делать

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

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

Если база перестала открываться у всех сразу

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

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

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

Для диагностики из командной строки пригодится утилита rac. Ей нужна запущенная служба ras:

rac cluster list
rac session list --cluster=<id кластера>

Первая команда показывает кластеры и их идентификаторы, вторая — текущие сеансы. Полный список команд выводит rac help.

6. Как подключить базы сразу на всех компьютерах

Добавлять базу вручную на тридцати рабочих местах долго и чревато опечатками. Есть три способа сделать это централизованно.

Общий файл списка баз

Список баз пользователя хранится в файле %APPDATA%\1C\1CEStart\ibases.v8i. Его можно не копировать, а подключить общий список с сервера:

  1. Создайте файл \\SRV\Bases\bases.v8i в кодировке UTF-8 с BOM:
[Бухгалтерия (сервер)]
Connect=Srvr="SRV1C";Ref="buh";

[Зарплата и кадры (сервер)]
Connect=Srvr="SRV1C";Ref="zup";

[Архив 2023 (файловая)]
Connect=File="\\SRV\Bases\Archive2023";
  1. В файле настроек стартера %APPDATA%\1C\1CEStart\1cestart.cfg добавьте строку:
CommonInfoBases=\\SRV\Bases\bases.v8i

Чтобы настройка действовала для всех пользователей компьютера, пропишите её в %ALLUSERSPROFILE%\1C\1CEStart\1cestart.cfg. Через групповую политику домена этот файл раскатывают на все машины одной задачей.

Теперь новая база в bases.v8i появится у всех пользователей при следующем открытии окна запуска.

Создание баз пакетной командой

Платформа умеет создавать базу из командной строки и сразу добавлять её в список:

"C:\Program Files\1cv8\8.3.24.1586\bin\1cv8.exe" CREATEINFOBASE Srvr="SRV1C";Ref="buh_test";DBMS="MSSQLServer";DBSrvr="SQL01";DB="buh_test";DBUID="user1c";DBPwd="пароль";CrSQLDB="Y";SQLYOffs=2000;SchJobDn="Y" /AddInList "Бухгалтерия (тест)"

Параметр SchJobDn="Y" сразу блокирует регламентные задания — удобно для тестовых копий. Для PostgreSQL укажите DBMS="PostgreSQL" и уберите смещение дат.

Утилита rac на сервере

Администратор создаёт базы в кластере без консоли, например из скрипта:

rac infobase create --cluster=<id кластера> --create-database --name=buh2 --dbms=MSSQLServer --db-server=SQL01 --db-name=buh2 --locale=ru --db-user=user1c --db-pwd=пароль --license-distribution=allow

Если на кластере заданы администраторы, добавьте --cluster-user и --cluster-pwd. Перед массовым запуском проверьте параметры своей версии командой rac help infobase.

Пароли в bat-файлах лежат открытым текстом. Храните такие скрипты в папке, доступной только администраторам, и не оставляйте их в общей сетевой папке с bases.v8i.

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

Можно ли подключить файловую базу по IP вместо имени сервера?
Да, путь вида \\192.168.10.15\Bases\Buh работает. Но при смене адреса сервера придётся менять путь у всех пользователей, поэтому имя надёжнее.
Сколько пользователей выдержит файловая база на сервере?
Жёсткого ограничения нет, всё упирается в сеть, диск и объём базы. Если пользователи жалуются на блокировки и долгое проведение документов, пора переходить на клиент-серверный вариант.
Нужна ли лицензия на сервер для файловой базы в сетевой папке?
Нет. Файловая база в общей папке обходится клиентскими лицензиями. Лицензия на сервер 1С:Предприятия нужна только для клиент-серверного варианта.
Можно ли держать разные версии платформы на одном сервере 1С?
Да, если запускать для каждой версии отдельный агент на своих портах, например 1540 и 2540. Клиент тогда подключается к кластеру с указанием порта: SRV1C:2541.
Почему база видна в консоли кластера, но не в окне запуска?
Консоль показывает регистрацию базы на сервере, а окно запуска — личный список пользователя. Базу нужно добавить в список вручную или через общий файл bases.v8i.