Подключение клиент-серверной базы 1С 8.3: от кластера до ярлыка у пользователя
Содержание
Чтобы добавить серверную базу
1С в список, откройте окно запуска, нажмите Добавить…, выберите Добавление в список существующей информационной базы, затем вариант На сервере 1С:Предприятия. Укажите имя сервера в поле «Кластер серверов
1С:Предприятия» и имя базы в поле «Имя информационной базы в кластере». Больше для подключения ничего не нужно, если база уже зарегистрирована в кластере.
Частая ошибка — путать имя базы в кластере с именем базы данных в SQL или PostgreSQL. Окно запуска ждёт именно имя из консоли кластера. Если вписать имя из СУБД, а они различаются, платформа ответит, что информационная база не обнаружена.
Что проверить до того, как добавлять базу
Добавление в список — последний шаг. До него база уже должна существовать на сервере. Соберите четыре значения:
- 🖥️ Имя или IP сервера 1С. То, на котором работает агент сервера (служба «Агент сервера 1С:Предприятия 8.3»), а не сервер СУБД, если они разнесены.
- 🔢 Порт кластера. По умолчанию 1541, его можно не писать. Если на сервере несколько кластеров или версий, порт другой, например 1641 или 2541.
- 🏷️ Имя базы в кластере. Смотрите в консоли администрирования серверов, ветка «Информационные базы».
- 🔑 Пользователь 1С и пароль. Или включённая аутентификация операционной системы для вашей учётной записи.
Отдельно проверьте версию платформы. Клиент должен совпадать с сервером до последней цифры номера: к серверу 8.3.24.1548 подключается только клиент 8.3.24.1548. Если на компьютере установлено несколько версий, нужную позже пропишем в свойствах базы.
Проверьте и сеть. Клиент сначала обращается к агенту сервера (порт 1540), затем к менеджеру кластера (1541) и к рабочим процессам. Диапазон портов рабочих процессов задаётся в свойствах рабочего сервера, по умолчанию 1560–1591. Все эти порты должны быть открыты от клиента до сервера.
Быстрая проверка сети с компьютера пользователя — в PowerShell: Test-NetConnection srv1c -Port 1541. Строка TcpTestSucceeded : True значит, что порт доступен.
Добавляем серверную базу в список через окно запуска
Это основной способ, им пользуются чаще всего. Окно запуска открывается ярлыком «1С:Предприятие».
Шаги
- Нажмите
Добавить…справа от списка баз. - Выберите
Добавление в список существующей информационной базыи нажмитеДалее. - Введите наименование. Это подпись в списке, её видит только пользователь: например, «Бухгалтерия ООО Ромашка».
- Выберите тип расположения
На сервере 1С:Предприятия. - В поле «Кластер серверов 1С:Предприятия» впишите имя сервера:
srv1c. При нестандартном порте — с двоеточием:srv1c:1641. - В поле «Имя информационной базы в кластере» впишите имя из консоли:
buh_romashka. - На следующей странице выберите вариант аутентификации, основной режим запуска и версию 1С:Предприятия.
- Нажмите
Готово. База появится в списке.
Если базы в кластере ещё нет
Тогда выбирайте не «существующую», а Создание новой информационной базы. После выбора варианта На сервере 1С:Предприятия мастер попросит больше данных:
| Поле | Что указать |
|---|---|
| Кластер серверов 1С:Предприятия | Имя сервера 1С, при необходимости с портом |
| Имя информационной базы в кластере | Латиница без пробелов, например zup_2 |
| Тип СУБД | MS SQL Server, PostgreSQL и т. п. |
| Сервер баз данных | Имя сервера СУБД (или экземпляра SQL) |
| Имя базы данных | Имя базы в СУБД |
| Пользователь базы данных и пароль | Учётная запись СУБД с правом создавать базы |
| Создать базу данных в случае её отсутствия | Флажок, если базы в СУБД ещё нет |
Если на кластере заведены администраторы, платформа дополнительно запросит логин и пароль администратора кластера. Без них зарегистрировать новую базу не получится.
Поле «Версия 1С:Предприятия»
Это поле решает половину проблем с подключением. Впишите номер, совпадающий с сервером, например 8.3.24.1548. Тогда ярлык всегда запустит нужный клиент, даже если на компьютере стоят три разные версии. Шаблон 8.3 означает «самая новая установленная 8.3», и после обновления клиента подключение может сломаться.
Регистрация базы в консоли кластера
Консоль администрирования серверов 1С нужна администратору. Через неё базу создают в кластере или регистрируют базу, которая уже лежит в СУБД, например после переноса с другого сервера.
Порядок действий
- Откройте консоль и разверните ветку:
Central 1C:Enterprise 8.3 servers → имя сервера → Кластеры → кластер → Информационные базы. - На ветке «Информационные базы» вызовите контекстное меню и выберите
Создать → Информационная база. - Заполните имя базы в кластере, тип СУБД, сервер баз данных, имя базы данных и учётные данные СУБД.
- Для уже существующей базы в СУБД снимите флажок «Создать базу данных в случае её отсутствия». Для новой — поставьте.
- При переносе работающей базы с другого сервера поставьте «Установить блокировку регламентных заданий». Так копия не начнёт выгружать данные в банк или ЭДО параллельно с основной.
- Флажок «Разрешить выдачу лицензий сервером 1С:Предприятия» включайте, если клиенты должны брать лицензии с сервера.
- Нажмите
ОК. Имя базы в кластере — именно то, что пользователь потом впишет в окне запуска.
Флажок «Создать базу данных в случае её отсутствия» при опечатке в имени базы данных создаст рядом новую пустую базу. Пользователи подключатся к пустышке и решат, что данные пропали. Сверяйте имя с СУБД перед нажатием ОК.
Если консоль не открывается
Консоль работает через библиотеку radmin.dll. После установки другой версии платформы оснастка часто пишет, что класс не зарегистрирован. Помогает перерегистрация из командной строки, запущенной от имени администратора:
regsvr32 "C:\Program Files\1cv8\8.3.24.1548\bin\radmin.dll"
Путь и номер версии подставьте свои. Версия radmin.dll должна совпадать с версией сервера.
Посмотреть список баз без консоли
Если на сервере запущен сервер администрирования ras, список баз кластера выводит утилита rac:
rac cluster list
rac infobase --cluster=<uuid-кластера> summary list
Первая команда покажет идентификатор кластера, вторая — имена баз. Для прочих параметров смотрите справку rac help.
Файл списка баз ibases.v8i: правка вручную и раздача пользователям
Список баз в окне запуска хранится в обычном текстовом файле. Путь у текущего пользователя Windows:
%APPDATA%\1C\1CEStart\ibases.v8i
Одна серверная база в нём выглядит так:
[Бухгалтерия ООО Ромашка]
Connect=Srvr="srv1c:1641";Ref="buh_romashka";
ID=3f2a8c4e-1b7d-4e2a-9c51-7d0e6a2b9f10
OrderInList=0
Folder=/
External=0
Version=8.3.24.1548
Главное здесь строка Connect. Srvr — сервер 1С с портом кластера, Ref — имя базы в кластере. Для файловой базы вместо них стоит File="путь", поэтому по этой строке сразу видно тип подключения.
Когда удобно править файл напрямую
- 📋 Нужно добавить одну и ту же базу двадцати пользователям.
- 🔁 Сервер переехал, и во всех записях надо заменить имя.
- 💾 Нужно сохранить список перед переустановкой Windows.
Закройте окно запуска перед правкой, иначе оно перезапишет файл. Каждой записи нужен свой ID: при копировании блока сгенерируйте новый GUID, например командой PowerShell [guid]::NewGuid().
Общий список баз для всего офиса
Вместо копирования файла на каждый компьютер подключите общий список. Положите файл .v8i в сетевую папку, например \\fs\1c\bases.v8i. Затем у пользователя в окне запуска нажмите Настройка… и добавьте этот путь в «Адреса интернет-сервисов и списки общих информационных баз».
Тот же параметр хранится в файле %APPDATA%\1C\1CEStart\1CEStart.cfg:
CommonInfoBases=\\fs\1c\bases.v8i
Строку можно разнести по компьютерам групповой политикой или скриптом входа. Новая база, добавленная в общий файл, появится у всех при следующем открытии окна запуска.
Кто и как входит в серверную базу
В клиент-серверном варианте участвуют три уровня учётных записей. Их часто путают.
| Уровень | Где задаётся | Для чего |
|---|---|---|
| Администратор кластера | Консоль, ветка «Администраторы» кластера | Создание и удаление баз, управление кластером |
| Пользователь информационной базы | Конфигуратор или раздел администрирования в самой программе | Вход в программу, роли и права |
| Пользователь СУБД | SQL Server или PostgreSQL | Доступ сервера 1С к таблицам базы |
Обычный бухгалтер знает только второй уровень. Учётные данные СУБД вводит администратор при регистрации базы, у пользователя их спрашивать не будут.
Аутентификация 1С и Windows
В свойствах базы в окне запуска есть выбор: «Выбирать автоматически», «Запрашивать имя и пароль» или вход по учётной записи операционной системы. Для входа по Windows пользователю 1С в карточке нужно включить аутентификацию операционной системы и указать доменную учётную запись в формате \\DOMAIN\ivanov.
В домене вход по Windows на сервер 1С работает через Kerberos. Если он не срабатывает только для серверной базы, а для файловой работает, проверьте, от чьего имени запущена служба агента сервера и зарегистрировано ли для неё имя службы (SPN). Это задача доменного администратора.
Права службы сервера
Служба агента обычно работает от отдельной учётной записи, например USR1CV8. Ей нужны права на каталог кластера и на запись в журнал регистрации. Если базу перенесли и сменили учётную запись службы, а прав на каталог srvinfo не дали, кластер не поднимется. Тогда к базе не подключится никто.
Почему серверная база не подключается
Большинство проблем видно по тексту ошибки. Разберите свой случай:
Если сервер называется по-разному
Отдельный случай — сервер переименовали или он стоит за NAT. Кластер хранит имя рабочего сервера, под которым его создали. Клиент получает это имя от менеджера кластера и пытается к нему подключиться. Если имя у клиента не разрешается, связь рвётся уже после первого успешного шага.
Решения два: прописать имя в DNS или в файле C:\Windows\System32\drivers\etc\hosts на клиенте. Менять имя рабочего сервера в консоли — работа для администратора в нерабочее время.
Любые изменения свойств рабочего сервера и перезапуск службы агента обрывают сеансы всех пользователей. Делайте это вечером или в выходной, предупредив людей заранее.
Частые вопросы
Можно ли добавить серверную базу по IP-адресу, без имени сервера?
192.168.1.20 или 192.168.1.20:1641. Но рабочие процессы всё равно сообщат клиенту имя сервера, поэтому оно тоже должно разрешаться.Чем «Добавление существующей» отличается от «Создания новой» базы?
Почему база пропала из списка после переустановки 1С?
ibases.v8i лежит в профиле пользователя. Скопируйте его из старого профиля или подключите общий список.