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

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

Как завершить работу пользователей 1С 8.3 перед обновлением

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

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

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

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

Подготовка: что сделать до завершения сеансов

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

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

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

Как установить блокировку сеансов и предупредить пользователей

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

Код разблокировки — произвольная строка, которую знает только администратор. Она позволяет войти в базу во время блокировки через параметр запуска /UC код, не снимая блокировку для остальных. Это удобно, когда самому администратору нужно работать в базе в момент обновления.

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

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

Завершение сеансов в клиент-серверном режиме

В клиент-серверной архитектуре полный контроль над сеансами даёт консоль администрирования серверов 1С. Откройте консоль, раскройте нужный кластер, найдите информационную базу и перейдите на вкладку «Сеансы». Здесь видно всех подключённых пользователей, время начала сеанса, последнюю активность и режим работы.

Чтобы завершить конкретный сеанс, выделите его и нажмите «Удалить» в контекстном меню. Для массового завершения выделите все сеансы базы (Ctrl+A) и удалите их. Перед удалением проверьте колонку «Спящий сеанс» и время последнего вызова: активно работающего пользователя лучше сначала предупредить лично.

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

Завершение через командную строку и RAC

Для автоматизации используйте утилиту администрирования кластера rac.exe из каталога установки сервера 1С. Она позволяет получить список сеансов и завершить их без графической консоли, что удобно в скриптах обновления.

bash
"C:\Program Files\1cv8\8.3.xx.xxxx\bin\rac.exe" session terminate --cluster=<ID_кластера> --session=<ID_сеанса>

Идентификаторы кластера и сеансов получают командами rac cluster list и rac session list --cluster=<ID>. В скриптах обычно сначала включают блокировку сеансов через rac infobase update с параметрами блокировки, выжидают паузу, затем завершают оставшиеся сеансы.

Завершение сеансов в файловом режиме

В файловой базе нет кластера серверов, поэтому консоль недоступна. Штатный способ — блокировка сеансов через функциональность БСП (в типовых конфигурациях) плюс внешние обработки, которые завершают сеансы других пользователей. Такие обработки используют метод ПолучитьСеансыИнформационнойБазы() и прерывают сеансы программно.

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

При работе через веб-сервер (публикация на IIS или Apache) сеансы клиентов обслуживает рабочий процесс веб-сервера. Перезапуск пула приложений IIS или службы Apache завершит все веб-сеансы файловой базы. Это быстрее, чем выгонять пользователей по одному, но требует уверенности, что никто не выполняет важную операцию.

Способы завершения сеансов

Блокировка сеансов + ожидание

Самый безопасный вариант. Подходит, когда есть 10–20 минут на штатное завершение работы пользователей.

Удаление сеансов в консоли кластера

Точечный и массовый разрыв в клиент-серверном режиме. Быстро, но несохранённые данные пользователей теряются.

rac.exe в скриптах

Для автоматизированного обновления по расписанию. Требует прав администратора кластера и аккуратной проверки идентификаторов.

Перезапуск веб-сервера или доступа к файлу

Крайняя мера для файлового режима, когда штатные средства недоступны. Максимальный риск потери несохранённых данных.

Автоматическое обновление без ручного выгона пользователей

В типовых конфигурациях обновление через интернет-поддержку умеет само устанавливать блокировку сеансов и просить пользователей выйти. При запуске обновления из раздела «Администрирование» → «Обновление версии программы» мастер предложит установить блокировку и покажет список мешающих сеансов.

Для пакетного сценария используется запуск конфигуратора в режиме пакетных команд: DESIGNER с параметрами /UpdateDBCfg и /DisableStartupDialogs. Монопольный режим конфигуратор попытается установить сам, но при активных сеансах команда завершится ошибкой — поэтому блокировку и завершение сеансов всё равно нужно выполнить заранее.

Проверка результата и типичные ошибки

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

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

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

Как проверить, что база свободна

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

Сеансов нет или только ваш сеанс администратора

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

Есть чужие сеансы, в том числе фоновых заданий и веб-сервисов

Установка монопольного режима
Норма

Конфигуратор переходит в монопольный режим без ошибок

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

Ошибка «информационная база занята»

Блокировка новых сеансов
Норма

Новый пользователь получает сообщение о блокировке

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

Пользователи продолжают входить в базу

Типичные ошибки
01
Удаление соединений вместо сеансов — сеанс остаётся и продолжает держать блокировки, обновление не запускается
02
Забытые фоновые задания и сеансы веб-сервисов — их не видно в списке «Активные пользователи» конфигурации, но они мешают монопольному режиму
03
Блокировка без кода разблокировки — администратор сам не может войти в базу тонким клиентом для проверки
04
Принудительный разрыв без резервной копии — при повреждении незавершённой транзакции восстанавливать нечего
05
Снятие блокировки сразу после обновления конфигурации, но до обработчиков обновления данных — пользователи входят в полуобновлённую базу

Что делать после обновления

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

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

Итог

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

Безопасная схема всегда одна: блокировка сеансов с предупреждением → ожидание выхода → принудительное завершение остатков → резервная копия → обновление → проверка → снятие блокировки. Принудительный разрыв без копии и без проверки фоновых заданий — главный источник проблем.

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

Можно ли обновить 1С, не выгоняя пользователей?

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

Пользователь ушёл домой, а его сеанс «висит». Что делать?

Такой сеанс безопасно завершить принудительно через консоль кластера: признаки — давнее время последнего вызова и отсутствие активности. Риск минимален, но несохранённые данные этого пользователя (например, открытый незаписанный документ) будут потеряны.

Монопольный режим не устанавливается, хотя все вышли. В чём причина?

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

Как войти в базу, когда включена блокировка сеансов?

Используйте параметр запуска /UC с кодом разблокировки, который задавался при установке блокировки. Например, добавьте в строку запуска тонкого клиента: /UC Админ2026. Код работает только для блокировки, установленной штатными средствами.

Опасно ли перезагружать сервер 1С для завершения сеансов?

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

Нужно ли завершать сеансы при обновлении платформы, а не конфигурации?

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