К статье
Практический материал

Администрирование · 13 мин

Как заблокировать базу 1С 8.3 на время обновления

Способы блокировки базы 1С 8.3 перед обновлением: через консоль кластера, конфигуратор и код. Выгон пользователей, проверка результата, типичные ошибки.

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

Способ блокировки зависит от режима работы базы. Для клиент-серверного варианта основным инструментом является консоль кластера серверов 1С, для файловой базы — блокировка через конфигуратор или программная установка через код. Дополнительно в типовых конфигурациях на базе Библиотеки стандартных подсистем есть штатный механизм «Блокировка работы пользователей», который позволяет выполнить всё из пользовательского режима.

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

Когда блокировка обязательна и что она даёт

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

Блокировка решает две задачи. Первая — запрет новых подключений: пользователь, который попытается войти в базу, получит сообщение с текстом, заданным администратором (например, «Идёт обновление, вход будет доступен после 14:00»). Вторая — возможность контролируемо завершить уже активные сеансы, предварительно предупредив сотрудников.

Важно понимать: блокировка не завершает сеансы сама по себе. Она только закрывает «входную дверь». Работающих пользователей нужно завершать отдельно — вручную через консоль кластера, через штатный механизм конфигурации или программно.

Блокировка клиент-серверной базы через консоль кластера

Это основной способ для баз, работающих на сервере 1С:Предприятия. Откройте консоль администрирования серверов 1С (оснастка «Администрирование серверов 1С Предприятия»), раскройте нужный кластер, перейдите в ветку «Информационные базы» и откройте свойства требуемой базы двойным щелчком.

В окне свойств установите флаг «Блокировка начала сеансов включена». Заполните поля: сообщение для пользователей (его увидят все, кто попытается войти), дату и время начала и окончания блокировки, а также «Код разрешения» — произвольную строку, которая работает как пропуск. Зная этот код, администратор сможет войти в заблокированную базу, указав в строке подключения параметр разрешения.

После включения блокировки перейдите на вкладку «Сеансы» в консоли кластера. Здесь видны все активные подключения: пользователь, компьютер, время начала, режим (тонкий клиент, толстый клиент, фоновое задание). Сеансы можно завершить выборочно или все сразу через контекстное меню. Перед принудительным завершением отправьте пользователям сообщение — кнопка отправки сообщений сеансам есть в той же консоли.

Порядок блокировки через консоль кластера
  1. 1
    Откройте консоль администрирования серверов 1С и найдите нужную базу
  2. 2
    В свойствах базы включите «Блокировка начала сеансов», задайте сообщение и код разрешения
  3. 3
    Отправьте пользователям сообщение о предстоящем завершении сеансов
  4. 4
    Через 5–10 минут завершите оставшиеся сеансы на вкладке «Сеансы»
  5. 5
    Проверьте, что новые подключения отклоняются, и запускайте обновление
  6. 6
    После обновления снимите флаг блокировки и уведомите пользователей

Как войти в заблокированную базу администратору

Код разрешения передаётся в параметре запуска /UC или в строке соединения. Например, при запуске толстого клиента укажите: /UCКодРазрешения. В конфигураторе блокировка сеансов не мешает — он подключается в монопольном режиме отдельно, но для обновления конфигурации базы данных всё равно потребуется завершить все пользовательские сеансы.

Блокировка файловой базы через конфигуратор

Для файловой информационной базы консоль кластера недоступна, поэтому блокировка устанавливается из конфигуратора. Откройте базу в режиме «Конфигуратор», перейдите в меню «Администрирование» → «Блокировка установки соединений с информационной базой».

В открывшемся окне задайте период блокировки, сообщение для пользователей и код разрешения. С этого момента новые подключения к файловой базе будут отклоняться с указанным текстом. Учтите ограничение файлового режима: принудительно завершить чужие сеансы из конфигуратора нельзя — пользователям нужно написать или позвонить и попросить выйти, либо завершать их процессы на уровне операционной системы, что рискованно.

Активные соединения видны в том же меню «Администрирование» → «Активные пользователи». Список показывает, кто ещё находится в базе, и позволяет дождаться их выхода перед началом обновления.

Штатная блокировка из пользовательского режима

В типовых конфигурациях (Бухгалтерия предприятия, Управление торговлей, ERP, Зарплата и управление персоналом и других на базе БСП) есть встроенный механизм «Блокировка работы пользователей». Обычно он находится в разделе «Администрирование» → «Обслуживание» → «Блокировка работы пользователей» (в некоторых конфигурациях путь отличается).

Этот механизм удобен тем, что работает «мягко»: после установки блокировки активные пользователи получают предупреждение с обратным отсчётом, и их сеансы завершаются автоматически по истечении заданного времени. Новые входы блокируются сразу. Администратору не нужно вручную отслеживать и отключать каждого.

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

Сравнение способов блокировки

Консоль кластера

Для клиент-серверных баз. Полный контроль: сообщения, завершение сеансов, фоновые задания. Требует доступа к серверу администрирования.

Конфигуратор (файловая база)

Единственный штатный вариант для файлового режима. Не завершает чужие сеансы — пользователей придётся просить выйти.

Обработка «Блокировка работы пользователей»

Для типовых конфигураций. Мягкое завершение с предупреждением, не нужен доступ к серверу. Не работает в самописных конфигурациях без БСП.

Программная установка

Для автоматизации: скрипты обновления, регламентные окна. Требует аккуратности — при сбое скрипта блокировка может остаться включённой.

Программная блокировка через встроенный язык

Для автоматизации обновлений (например, при ночном обновлении по расписанию) блокировку устанавливают программно через объект БлокировкаСеансов. Это позволяет включить блокировку, выполнить обновление и снять блокировку в одном сценарии без ручных действий.

bsl
Блокировка = Новый БлокировкаСеансов;
Блокировка.Установлена = Истина;
Блокировка.Начало = ТекущаяДатаСеанса();
Блокировка.КодРазрешения = "Обновление2026";
Блокировка.Сообщение = "Выполняется обновление базы. Вход будет доступен через 30 минут.";
УстановитьБлокировкуСеансов(Блокировка);

После завершения работ блокировку снимают аналогично: получают текущую блокировку функцией ПолучитьБлокировкуСеансов(), устанавливают свойство Установлена = Ложь и применяют изменения. Обязательно оберните снятие блокировки в обработку исключений: если обновление завершится ошибкой и скрипт прервётся, база останется закрытой для всех пользователей.

Для клиент-серверных баз есть альтернатива — утилита администрирования rac из комплекта сервера 1С. Через неё блокировку и завершение сеансов можно выполнять из командной строки, что удобно для скриптов обновления без запуска клиента.

bash
rac infobase --cluster=<ID_кластера> update --infobase=<ID_базы> --sessions-deny=on --denied-message="Идёт обновление" --permission-code=Update123

Проверка результата и снятие блокировки после обновления

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

После успешного обновления снимите блокировку тем же способом, которым устанавливали: в консоли кластера снимите флаг «Блокировка начала сеансов включена», в конфигураторе — отключите блокировку соединений, в типовой обработке — нажмите «Снять блокировку». Затем проверьте вход под обычным пользователем и убедитесь, что версия конфигурации обновилась (раздел «О программе»).

Контрольные точки

Как проверить результат

Вход без кода разрешения
Норма

Отклонён с заданным сообщением

Тревожный признак

Пользователь входит в базу — блокировка не работает

Список сеансов перед обновлением
Норма

Пусто, нет фоновых заданий

Тревожный признак

Остались активные сеансы или фоновые задания

Вход после снятия блокировки
Норма

Пользователи входят, версия конфигурации новая

Тревожный признак

Вход отклоняется — блокировка не снята

Типичные ошибки и ограничения

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

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

Третья ошибка — незнание кода разрешения или его утечка. Если код разрешения становится известен пользователям, они обходят блокировку. Используйте уникальный код для каждого обновления и не передавайте его тем, кому вход не нужен.

Типичные ошибки
01
Не сняли блокировку после обновления — пользователи не могут войти утром. Задавайте время окончания блокировки как страховку.
02
Обновление при активных фоновых заданиях — обновление конфигурации БД не запускается. Проверяйте сеансы полностью, а не только пользовательские.
03
Принудительное завершение сеансов без предупреждения — потеря несохранённых данных и конфликты. Отправляйте сообщение за 5–10 минут.
04
Простой или повторно используемый код разрешения — пользователи обходят блокировку. Меняйте код при каждом обновлении.
05
Блокировка только в конфигураторе на файловой базе, пока пользователи внутри — монопольный доступ не получить. Сначала все должны выйти.
Маршрут решения

Как выбрать способ

База клиент-серверная, есть доступ к консоли кластераБлокируйте через свойства ИБ в консоли, завершайте сеансы там же
База файловаяИспользуйте «Администрирование → Блокировка установки соединений» в конфигураторе, пользователей попросите выйти
Типовая конфигурация, доступа к серверу нетПримените обработку «Блокировка работы пользователей» из раздела «Администрирование»
Обновление выполняется по расписанию ночьюАвтоматизируйте через БлокировкаСеансов в коде или утилиту rac, предусмотрев снятие блокировки при ошибке
Итог

Что важно запомнить

Последовательность всегда одинакова: включить блокировку новых сеансов → предупредить пользователей → завершить активные сеансы и фоновые задания → обновить → снять блокировку и проверить вход. Клиент-серверные базы блокируются через консоль кластера, файловые — через конфигуратор, типовые конфигурации имеют штатный механизм мягкой блокировки. Код разрешения и время окончания блокировки — обязательные элементы безопасности.

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

Можно ли обновить конфигурацию без выгона пользователей?

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

Пользователь не выходит из базы, а обновление горит. Что делать?

В клиент-серверном режиме завершите его сеанс принудительно через консоль кластера, предварительно отправив сообщение. В файловом режиме штатного способа нет — свяжитесь с пользователем или завершите процесс 1cv8.exe на его компьютере с пониманием риска потери несохранённых данных.

Как пользователи узнают, сколько продлится блокировка?

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

Блокировка мешает работе регламентных заданий?

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

Забыл код разрешения и сам не могу войти в базу. Что делать?

Для клиент-серверной базы откройте свойства информационной базы в консоли кластера — код разрешения виден там администратору кластера, либо просто снимите флаг блокировки. Для файловой базы зайдите в конфигуратор (блокировка соединений на него не распространяется) и отключите блокировку через меню «Администрирование».

Нужно ли блокировать базу при обновлении платформы 1С?

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