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

· 10 мин

Содержание

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

Обычно это нужно, когда Конфигуратор не даёт обновить базу : кто-то ушёл домой с открытой программой, а обновление структуры требует, чтобы в базе не было никого. Ниже — порядок действий, который снимает эту проблему за 5–10 минут и не портит данные.

Подготовка: что сделать до того, как отключать людей

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

  1. 📣 Предупредите коллег. Напишите в общий чат: «В 18:30 база закрывается на обновление, сохраните документы». Дайте 10–15 минут.
  2. 🔑 Проверьте свои права. Блокировку ставит пользователь с ролью «Полные права» или «Администратор системы». Для консоли кластера нужен логин и пароль администратора кластера, если он задан.
  3. 🧾 Придумайте код разрешения. Это произвольная строка, например obnov2610. С ней вы сами войдёте в заблокированную базу через Конфигуратор.
  4. 💾 Сделайте копию. После отключения всех выполните Администрирование → Выгрузить информационную базу в Конфигураторе и сохраните файл .dt вне каталога базы.
  5. ⏰ Выберите время. Регламентные задания (обмены, загрузка курсов, ЭДО) тоже держат соединения. Ночью их больше, чем кажется.

Если на сервере работают обмены с сайтом, веб-сервисы или мобильные приложения, они подключаются к базе так же, как пользователи. Отключите их заранее или договоритесь с теми, кто за них отвечает.

Где в Конфигураторе посмотреть, кто сейчас в базе

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

Что видно в списке:

  • 👤 Пользователь — имя из списка пользователей базы;
  • 🖥️ Компьютер — имя машины, с которой зашёл человек;
  • 📱 Приложение — тонкий клиент, толстый клиент, Конфигуратор, фоновое задание, COM-соединение, веб-клиент;
  • 🕒 Начало работы — когда открыт сеанс.

Этот список отвечает на главный вопрос: кому звонить. Если в нём висит «Фоновое задание» или «COM-соединение», значит, базу держит не человек, а обмен или внешняя программа.

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

Себя в списке вы тоже увидите: строка «Конфигуратор» с вашим именем. Это нормально, она не мешает обновлению.

Как отключить пользователей 1С 8.3: четыре рабочих способа

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

Способ 1. Блокировка работы пользователей из режима Предприятие

Подходит для Бухгалтерии 3.0, ЗУП 3.1, УТ 11 и других конфигураций на БСП. Работает и с файловой, и с серверной базой.

  1. Запустите базу в режиме 1С:Предприятие под администратором.
  2. Перейдите в Администрирование → Обслуживание и откройте ссылку «Блокировка работы пользователей».
  3. Заполните сообщение для пользователей: «Обновление базы, вход откроется в 19:30».
  4. Укажите время начала и окончания блокировки. Начало — через 5–10 минут, чтобы люди успели сохраниться.
  5. Впишите код разрешения (тот, что придумали на этапе подготовки).
  6. Нажмите кнопку установки блокировки.

Дальше программа сама показывает пользователям предупреждение, а к моменту начала блокировки завершает их сеансы. Новые входы запрещаются. Ваш сеанс продолжает работать.

Чтобы попасть в Конфигуратор после блокировки, добавьте код разрешения в строку запуска: /UC"obnov2610". В окне запуска 1С это делается так: выделите базу, нажмите «Изменить», дойдите до последней страницы и впишите /UC"obnov2610" в поле дополнительных параметров запуска.

Способ 2. Параметр запуска «ЗавершитьРаботуПользователей»

Тот же механизм БСП, но без ручного заполнения формы. Удобен для скриптов ночного обновления.

Клиент-серверная база :

"C:\Program Files\1cv8\8.3.24.1548\bin\1cv8.exe" ENTERPRISE /S"srv1c\buh" /N"Администратор" /P"пароль" /C"ЗавершитьРаботуПользователей" /UC"obnov2610"

Файловая база:

"C:\Program Files\1cv8\8.3.24.1548\bin\1cv8.exe" ENTERPRISE /F"D:\Bases\Buh" /N"Администратор" /P"пароль" /C"ЗавершитьРаботуПользователей" /UC"obnov2610"

Номер версии в пути замените на свой: он виден в каталоге C:\Program Files\1cv8\. Программа установит блокировку, дождётся завершения сеансов и закроется. Затем запускаете Конфигуратор с тем же /UC и обновляетесь.

После работ снимите блокировку той же командой, но с параметром /C"РазрешитьРаботуПользователей".

Пароль в bat-файле лежит открытым текстом. Храните такой файл только на сервере, в каталоге с ограниченным доступом.

Способ 3. Удаление сеансов в консоли кластера серверов

Только для клиент-серверной базы. Это самый быстрый и самый жёсткий вариант.

  1. Откройте «Администрирование серверов 1С Предприятия» на сервере или на машине администратора.
  2. Разверните дерево: Центральные серверы 1С:Предприятия → имя сервера → Кластеры → кластер → Информационные базы → нужная база → Сеансы.
  3. Справа появится список сеансов с именами пользователей и компьютеров.
  4. Выделите нужные строки (можно все через Ctrl+A), нажмите правую кнопку мыши и выберите «Удалить».
  5. Подтвердите удаление.

Пользователь увидит сообщение об ошибке «Сеанс отсутствует или удален» и потеряет несохранённые данные. Удаляйте сеансы только после предупреждения людей.

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

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

Версия radmin.dll должна совпадать с версией сервера, иначе консоль не подключится к кластеру.

Способ 4. Утилита rac: отключение сеансов из командной строки

Удобно, когда графической консоли нет (сервер на Linux) или нужен скрипт. Должна работать служба ras — сервер администрирования, по умолчанию порт 1545.

rac cluster list
rac infobase summary list --cluster=<id-кластера>
rac session list --cluster=<id-кластера> --infobase=<id-базы>
rac session terminate --cluster=<id-кластера> --session=<id-сеанса>

Сначала узнаёте идентификатор кластера, потом базы, потом получаете список сеансов и завершаете нужные по одному. Если на кластере задан администратор, к командам добавляются параметры авторизации — их точные имена смотрите в rac help session.

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

СпособКогда подходитЧто теряют пользователи
Блокировка из ПредприятияПлановое обновление, база на БСПНичего, если успели сохраниться
Параметр ЗавершитьРаботуПользователейНочные скрипты, регулярные работыТо же, что при блокировке
Консоль кластераСрочно, один «зависший» сеансНесохранённые документы
rac session terminateLinux-сервер, автоматизацияНесохранённые документы

Блокировка входа и монопольный доступ к базе

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

Блокировка на уровне кластера

В клиент-серверном варианте это делается без конфигурации, средствами платформы:

  1. В консоли кластера откройте свойства информационной базы.
  2. Отметьте «Блокировка начала сеансов включена».
  3. Задайте время начала и окончания, текст сообщения и код разрешения.
  4. Отметьте «Блокировка регламентных заданий включена», чтобы обмены не стартовали.
  5. Нажмите «ОК».

Новые сеансы не откроются. Вход возможен только с параметром /UC и вашим кодом.

Блокировка начала сеансов не выгоняет тех, кто уже в базе. Их сеансы удаляют отдельно, как описано выше.

Когда Конфигуратору нужен монопольный доступ

Открыть Конфигуратор и редактировать конфигурацию можно, пока люди работают. Монопольный доступ нужен только для отдельных операций:

  • 🔧 обновление конфигурации базы данных, если меняется структура хранения данных;
  • 📥 загрузка информационной базы из файла .dt;
  • 🩺 Администрирование → Тестирование и исправление.

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

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

Файловая база и сервер: в чём разница

Логика отключения одинаковая, но инструменты разные.

Что нужноФайловая базаКлиент-серверная база
Увидеть, кто в базеАдминистрирование → Активные пользователиТо же или список сеансов в консоли кластера
Мягко отключитьБлокировка из Предприятия (БСП)Блокировка из Предприятия или в свойствах базы в консоли
Принудительно отключитьЗакрыть процесс или открытый файлУдалить сеанс в консоли или через rac
Запрет входа без конфигурацииНет штатного средства платформы«Блокировка начала сеансов» в консоли

Если база файловая и человек не выходит

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

Варианты:

  1. 📞 Найти компьютер по колонке «Компьютер» в списке активных пользователей и закрыть программу там.
  2. 🖥️ На терминальном сервере открыть «Диспетчер задач», вкладку «Пользователи», и завершить процессы 1cv8.exe или 1cv8c.exe нужного пользователя.
  3. 📂 Если база лежит в общей папке, на этом компьютере открыть Управление компьютером → Общие папки → Открытые файлы, найти 1Cv8.1CD и закрыть его для нужного пользователя.

Закрытие файла или процесса посреди записи может повредить файловую базу. Делайте это только после выгрузки в .dt или при наличии свежей копии. После такого отключения стоит прогнать Тестирование и исправление.

Как запретить вход одному сотруднику

Иногда «отключить» значит не выгнать на время, а закрыть доступ навсегда: человек уволился.

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

В Конфигураторе тот же результат дают настройки в Администрирование → Пользователи: откройте пользователя и снимите обе отметки аутентификации — «Аутентификация 1С:Предприятия» и «Аутентификация операционной системы». Но в типовых конфигурациях список пользователей лучше вести из Предприятия. Иначе справочник «Пользователи» и список пользователей информационной базы разойдутся.

Если уволенный сотрудник сейчас в базе, запрет входа его не выгонит. Сначала снимите права, затем удалите его сеанс одним из способов выше.

Сбои при отключении пользователей и как их обойти

Найдите свой симптом — под ним причина и решение.

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

Ещё несколько ситуаций, которые встречаются реже.

Блокировка не снимается после работ. Если Конфигуратор упал посреди обновления, блокировка остаётся до времени окончания, указанного в форме. Зайдите в Предприятие с кодом разрешения и снимите её вручную. Для серверной базы снимите отметку «Блокировка начала сеансов включена» в свойствах базы в консоли.

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

В списке висит пользователь, которого давно нет на работе. Это обычно «зависший» сеанс тонкого клиента после спящего режима ноутбука. В серверной базе удаляется через консоль. В файловой — закрытием файла 1Cv8.1CD на машине с базой.

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

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

Можно ли завершить чужой сеанс прямо из Конфигуратора?
Нет. В Конфигураторе есть только просмотр активных пользователей. Завершают сеансы из режима Предприятие, в консоли кластера или утилитой rac.
Увидит ли пользователь предупреждение перед отключением?
При блокировке через БСП — да: программа показывает сообщение заранее. При удалении сеанса в консоли — нет, человек сразу получит ошибку.
Сколько времени держится блокировка?
До времени окончания, указанного при установке, или до ручного снятия. Если время окончания пустое, блокировка действует, пока её не снимут.
Нужно ли отключать пользователей для обновления без изменения структуры?
Не всегда. Если изменения не затрагивают хранение данных, Конфигуратор предложит динамическое обновление. Для обновления релиза типовой конфигурации отключать людей всё равно надёжнее.
Отключает ли блокировка регламентные задания?
Блокировка начала сеансов в консоли кластера — нет. Для них есть отдельная отметка «Блокировка регламентных заданий включена» в свойствах базы.