Новая информационная база в клиент-серверной 1С: от службы до первого входа
Содержание
Новую базу на сервере 1С создают через окно запуска: «Добавить» → «Создание новой информационной базы» → «На сервере 1С:Предприятия». Условие одно: на сервере работает служба агента 1С, есть кластер и доступна СУБД, где можно создавать базы. Остальное — заполнить восемь полей формы.
Ниже порядок, который я использую на практике: проверить среду, создать базу, выставить права и убедиться, что она живая. Примеры даны для PostgreSQL и Microsoft SQL Server, потому что на них сидит почти вся клиент-серверная 1С.
1. Что проверить до создания базы
Половина неудач — не ошибки в форме, а неготовая среда. Пять минут проверки экономят час разбирательств.
Службы и порты
На сервере 1С должна быть запущена служба «Агент сервера 1С:Предприятия» (процесс ragent). Откройте services.msc в Windows или выполните systemctl status для службы в Linux. Если службы нет в списке, серверная часть платформы не установлена: в установщике при выборе компонентов её нужно было отметить отдельно.
Стандартные порты, которые должны быть открыты между клиентом и сервером:
| Что | Порт по умолчанию |
|---|---|
| Агент сервера | 1540 |
| Главный менеджер кластера | 1541 |
| Рабочие процессы | диапазон 1560–1591 |
Если между клиентом и сервером межсетевой экран, откройте именно эти порты. Один 1541 не поможет: подключение к базе идёт через рабочие процессы.
Учётная запись службы
Служба запускается от имени пользователя (по умолчанию USR1CV8 в Windows). Этот пользователь должен иметь права на каталог серверных данных кластера и на каталог временных файлов. Если вы меняли учётную запись, а после этого база «не создаётся» или падают сеансы, начинайте с прав на эти папки.
Версии
Платформа клиента и платформа сервера должны совпадать до третьей цифры релиза (например, 8.3.24). Клиент старой версии подключится к более новому серверу плохо или не подключится совсем.
Проверьте версию заранее: в окне запуска 1С откройте «О программе», на сервере — версию в каталоге установки платформы.
2. Кластер серверов: где он и как его посмотреть
Кластер — это логическая единица, внутри которой живут базы. Один сервер может держать несколько кластеров, но чаще кластер один. При установке агента он создаётся автоматически.
Посмотреть и настроить кластер можно в консоли администрирования серверов 1С:Предприятия. В дереве слева:
- «Центральные серверы 1С:Предприятия» — ваш сервер.
- «Кластеры» — кластер (по умолчанию «Локальный кластер»).
- Внутри — «Информационные базы», «Рабочие серверы», «Администраторы» и другое.
Если сервер в консоли не виден, добавьте его: правая кнопка по «Центральные серверы» → «Создать» → «Центральный сервер», в поле «Имя» укажите имя сервера и порт агента.
Администратор кластера
Создавать базы из окна запуска можно, если кластер не защищён паролем администратора или вы его знаете. Если администратор кластера задан, при создании базы платформа запросит имя и пароль. Эти данные — не пароль пользователя базы и не пароль СУБД. Это третья, отдельная учётная запись.
Три разных логина путают чаще всего: администратор кластера, пользователь СУБД и пользователь самой информационной базы. Записывайте их сразу, с пометкой, к чему относится каждый.
3. Какую СУБД выбрать и как её подготовить
Платформа поддерживает несколько систем. Для новой базы выбор обычно сводится к двум.
| СУБД | Когда подходит | На что смотреть |
|---|---|---|
| PostgreSQL | Нет бюджета на лицензии СУБД, сервер на Linux или Windows, до сотен пользователей | Нужна сборка, поддерживаемая вашей версией платформы; работает с готовым дистрибутивом от 1С |
| Microsoft SQL Server | Уже куплена лицензия, большие базы, привычная среда администрирования | Лицензирование, версия сервера, настройка памяти |
Есть и другие варианты (IBM DB2, Oracle Database), но под новую небольшую базу их берут редко.
Подготовка PostgreSQL
Перед созданием базы убедитесь, что:
- сервер PostgreSQL запущен и принимает подключения с машины, где стоит сервер 1С (проверьте
listen_addressesи правила вpg_hba.conf); - есть пользователь с правом создавать базы (роль с атрибутом
CREATEDB) и известный пароль; - кодировка и локаль подходят для русской базы: платформа сама создаст базу в нужной кодировке, но при нестандартной сборке PostgreSQL возможны ошибки сортировки.
Для проверки соединения можно выполнить с сервера 1С:
psql -h адрес_сервера_СУБД -U имя_пользователя -d postgres
Если подключение не проходит здесь, оно не пройдёт и из 1С.
Подготовка Microsoft SQL Server
Нужен вход (login) с правами на создание баз. Проще всего использовать проверку подлинности SQL Server, а не Windows-аутентификацию: платформа подключается под тем логином, который вы укажете в форме. Убедитесь, что протокол TCP/IP включён в диспетчере конфигурации SQL Server и что экземпляр доступен по сети.
4. Создание базы: поля формы по порядку
Теперь основная часть. Запустите 1С, нажмите «Добавить», выберите «Создание новой информационной базы», затем шаблон (или «Создание информационной базы без конфигурации», если загружаете выгрузку .dt). На следующем шаге выберите вариант «На сервере 1С:Предприятия».
Поля формы
имя_сервера:1541. Если кластер на стандартном порту, порт можно не писать. Затем задайте «Имя информационной базы в кластере»: латиница и цифры, без пробелов, например buh_2026_test. Имя потом участвует в строке подключения, так что делайте его коротким и понятным.localhost, но для боевой базы лучше использовать то имя, по которому её видит остальная сеть.2000, для PostgreSQL — 0. Смещение нужно из-за ограничений на минимальную дату в некоторых типах СУБД. Для новой базы с современной платформой и актуальной СУБД значение лучше не придумывать, а брать то, что предлагает платформа по умолчанию.После нажатия «Далее» выберите режим запуска («Автоматически выбирать» подойдёт в большинстве случаев) и «Готово». Платформа создаст базу в СУБД, зарегистрирует её в кластере и добавит в список.
Если база создаётся из консоли администрирования
Тот же результат даёт консоль: в дереве «Информационные базы» → правая кнопка → «Создать» → «Информационная база». Поля те же. Преимущество в том, что сразу видны все базы кластера и доступны их свойства, включая блокировку сеансов и регламентных заданий.
5. Права: кто и что сможет в новой базе
Здесь три уровня, и все нужно настроить.
Уровень СУБД
Пользователь СУБД, под которым платформа создала базу, становится её владельцем. Для работы достаточно одного технического пользователя: ему принадлежат все таблицы. Обычным сотрудникам доступ к СУБД не нужен и опасен: прямой доступ к таблицам обходит все права 1С.
Уровень кластера
Если база создавалась под администратором кластера, дополнительно ничего делать не надо. Если кластер защищён, а пользователи запускают базы с рабочих мест, им пароль администратора кластера знать не требуется: он нужен только для управления.
Уровень информационной базы
Новая пустая база не содержит пользователей. Первый вход выполняется без пароля. Сразу после этого:
- Откройте «Администрирование» → «Пользователи» (в конфигурациях на управляемых формах) или конфигуратор: «Администрирование» → «Пользователи».
- Создайте пользователя с ролью полного доступа для администратора.
- Задайте ему пароль.
- Остальным сотрудникам выдайте роли по должностям, а не «Полные права».
Если оставить базу без пользователей и открыть её сети, любой вошедший получит полный доступ. Создайте администратора до того, как дадите ссылку на базу кому-то ещё.
Способ подключения клиента
В списке баз у пользователя запись хранится как строка вида:
Srvr="имя_сервера";Ref="имя_базы";
Для веб-доступа настраивают публикацию на веб-сервере, но это отдельная задача и к созданию базы не относится.
6. Первый запуск: как понять, что всё в порядке
Выберите новую базу в списке и запустите её в режиме «Конфигуратор». Если открылась пустая конфигурация или загруженный шаблон, соединение с СУБД работает.
Проверьте три вещи:
- ✅ в консоли администрирования в разделе «Информационные базы» новая база появилась с вашим именем;
- ✅ в «Сеансах» отображается ваш сеанс при запущенной базе;
- ✅ в СУБД создана база с указанным именем (в PostgreSQL — командой
\lвpsql, в SQL Server — в обозревателе объектов).
Загрузка данных
Если вы переносите существующую базу, в конфигураторе выберите «Администрирование» → «Загрузить информационную базу» и укажите файл .dt. Загрузка требует монопольного доступа: пока в базе есть другие сеансы, она не начнётся.
Для крупной базы запасайте время: загрузка выгрузки на 10 ГБ может занять от одного до нескольких часов в зависимости от диска. Запускайте её вне рабочего дня.
7. Что сделать сразу, чтобы база не тормозила
Новая база работает быстро, пока она пустая. Через месяц проблемы начинаются, если не заложить обслуживание.
Резервные копии
Копия средствами СУБД (pg_dump для PostgreSQL, резервное копирование
для SQL Server) делает базу восстановимой за минуты. Выгрузка .dt из конфигуратора — дополнительная страховка, но не замена: она требует монопольного входа и подходит для разовых операций.
Статистика и индексы
СУБД выбирает план запроса по статистике. Если её не обновлять, запросы 1С со временем замедляются. В PostgreSQL за это отвечает автоочистка (autovacuum), в SQL Server — задания обслуживания (обновление статистики, перестроение индексов).
Журнал регистрации и хранилище
Журнал регистрации 1С по умолчанию растёт без ограничений. Выберите период, по истечении которого он будет разделяться, и настройте очистку старых файлов. Каталог кластера со служебными данными тоже должен лежать на диске с запасом.
8. Частые ошибки при создании базы
Здесь только то, что не следует из шагов выше.
имя_сервера:1541.pg_hba.conf нет правила для адреса сервера 1С. Для SQL Server проверьте, что включён смешанный режим проверки подлинности.CREATEDB (PostgreSQL) или права dbcreator (SQL Server) либо создайте пустую базу вручную и снимите флажок создания.