Отключаем всех из базы 1С перед обновлением конфигурации
Содержание
Выгнать пользователей 1С через конфигуратор в клиент-серверной базе проще всего так: запустите Конфигурация → Обновить конфигурацию базы данных, и когда платформа сообщит, что монопольный режим установить нельзя, нажмите Завершить сеансы и повторить. В файловой базе такой кнопки нет: там сеансы закрывают блокировкой из режима «Предприятие» или вручную на компьютерах пользователей.
Способов принудительно закрыть пользователей
несколько, и выбор зависит от варианта базы. Для серверной — кнопка в конфигураторе, консоль кластера или rac. Для файловой — блокировка соединений, затем закрытие клиентов. Ниже разбираем каждый вариант с порядком действий и рисками.
Перед тем как отключать пользователей
Принудительное завершение сеанса обрывает работу человека на полуслове. Документ, который он не записал, пропадёт. Обработка, которая шла в этот момент, откатится. Поэтому сначала короткая подготовка.
📌 Что сделать заранее:
- Предупредите людей. Сообщение в рабочий чат за 10–15 минут сэкономит вам звонки «у меня всё закрылось».
- Выберите время. Обновления и исправление базы удобнее делать вечером или до начала рабочего дня.
- Сделайте резервную копию. Для серверной базы — средствами СУБД, для файловой — копию каталога с файлом
1Cv8.1CDили выгрузку в.dt. - Узнайте, кто сейчас в базе. Список даёт
Администрирование → Активные пользователив конфигураторе. - Определите, зачем нужно отключение. От этого зависит, хватит ли одного раза или нужна блокировка на всё время работ.
Монопольный режим нужен не для любой работы в конфигураторе. Он требуется при обновлении конфигурации базы данных, если динамическое обновление невозможно, при загрузке информационной базы из .dt, при тестировании и исправлении. Редактировать конфигурацию, сравнивать, сохранять в файл можно, пока пользователи работают.
Кто считается сеансом
В списке активных пользователей видны не только люди. Сеансом считаются:
- 👤 обычные клиенты: тонкий, толстый, веб-клиент;
- 🛠 другие открытые конфигураторы;
- ⏱ фоновые и регламентные задания;
- 🔌 COM-соединения, обращения к веб-сервисам и HTTP-сервисам, обмены с сайтом и мобильными приложениями.
Если отключить только людей, регламентное задание через минуту снова откроет сеанс. Поэтому при длительных работах блокируют и их.
Как открыть базу в конфигураторе и увидеть, кто в ней работает
Запустите 1С, выберите базу в списке и нажмите кнопку Конфигуратор. Войдите под пользователем с полными правами. Если в базе нет ни одного пользователя, вход произойдёт без запроса пароля.
Внутри откройте Администрирование → Активные пользователи. Появится таблица: имя пользователя, приложение (например, «Тонкий клиент», «Конфигуратор», «Фоновое задание»), компьютер, время начала сеанса.
Что эта таблица даёт:
- видно, кто мешает и с какого компьютера он зашёл;
- видно, остались ли «висящие» сеансы людей, которые давно ушли домой;
- можно позвонить конкретному человеку, а не рассылать всем.
Из окна активных пользователей в конфигураторе сеанс не завершить — это только список. Закрывают сеансы способами из следующих разделов.
Если базу нужно открыть, а вход уже запрещён блокировкой, используйте код разрешения. Для этого в свойствах базы в окне запуска, в поле дополнительных параметров, укажите ключ /UC с кодом сразу после него, например /UC12345.
Монопольный режим: как установить и что делать, когда он не ставится
Монопольный режим конфигуратор устанавливает сам, когда этого требует операция. Отдельного пункта «включить монопольный режим » в меню нет. Вы запускаете операцию — платформа пытается установить монопольный доступ — и либо продолжает, либо сообщает, что база занята.
Кнопка «Завершить сеансы и повторить»
Порядок для клиент-серверной базы:
- Откройте
Конфигурация → Обновить конфигурацию базы данных(или клавишуF7). - Если пользователи в базе и динамическое обновление невозможно, появится сообщение о невозможности установить монопольный режим.
- В этом окне нажмите
Завершить сеансы и повторить. - Платформа закроет все сеансы, кроме вашего, и сразу продолжит обновление.
Сеансы закрываются без вопросов к пользователям: всё незаписанное у них пропадёт.
Кнопка работает для серверной базы. В файловом варианте её нет — сеансы файловой базы платформа принудительно не завершает.
Если динамическое обновление предлагается само
Иногда платформа предлагает обновить конфигурацию динамически, не выгоняя людей. Это допустимо для мелких правок. Но после такого обновления пользователи работают на старой версии до перезапуска, и часть изменений вступает в силу не сразу. Для обновления типовой конфигурации на новый релиз динамический вариант не подходит: лучше отключить всех.
Блокировка сеансов: чтобы пользователи не зашли снова
Выгнать людей мало — через минуту кто-то снова откроет базу. На время работ ставят блокировку начала сеансов. Есть три места, где это можно сделать.
В режиме «Предприятие» (типовые конфигурации)
В БП 3.0, ЗУП 3.1, УТ 11 и других конфигурациях на БСП откройте раздел Администрирование → Обслуживание. В группе администрирования есть ссылки «Активные пользователи» и «Блокировка работы пользователей».
В форме блокировки задают:
- текст сообщения, которое увидят пользователи;
- время начала и окончания блокировки;
- код разрешения для входа администратора.
После установки блокировки работающим пользователям приходят предупреждения, а в момент её начала их сеансы завершаются. Новые входы запрещены, пользователь видит сообщение «Начало сеанса с информационной базой запрещено» с вашим текстом.
Блокировку из «Предприятия» удобно ставить заранее, например на 20:00. Люди получат предупреждение и успеют сохранить работу.
Через параметры запуска
Конфигурации на БСП понимают служебные параметры запуска. Если открыть базу
в режиме «Предприятие» с ключом /C и параметром ЗавершитьРаботуПользователей, программа установит блокировку и начнёт завершать сеансы. Снимают блокировку параметром РазрешитьРаботуПользователей. Вход во время блокировки — с ключом /UC и кодом.
"C:\Program Files\1cv8\common\1cestart.exe" ENTERPRISE /S "srv1c\buh" /N "Администратор" /P "пароль" /C "ЗавершитьРаботуПользователей" /UC 12345
Этот приём удобен в сценариях ночного обновления: батник ставит блокировку, затем запускает конфигуратор с тем же /UC.
В консоли кластера
Для серверной базы блокировку ставят в свойствах информационной базы в консоли «Администрирование серверов 1С Предприятия». Там отмечают флажок блокировки начала сеансов, пишут сообщение, код разрешения и интервал. Отдельным флажком блокируются регламентные задания.
Отключение сеансов в файловой и серверной базе
Здесь главное различие темы. Для удобства — сводная таблица.
| Способ | Файловая база | Клиент-серверная база | Риск |
|---|---|---|---|
Кнопка Завершить сеансы и повторить в конфигураторе | нет | да | незаписанные данные пропадут |
| Блокировка из «Предприятия» (БСП) | да, с задержкой | да | минимальный, есть предупреждение |
| Консоль кластера: удаление сеанса | нет | да | обрыв без предупреждения |
Утилита rac | нет | да | обрыв без предупреждения |
Закрытие процесса 1cv8 на компьютере | да | да | обрыв, риск повредить файловую базу |
Файловая база
Файловую базу никто, кроме самих клиентов, не держит под контролем: нет сервера, который мог бы «вырубить» сеанс. Отсюда порядок:
- Поставьте блокировку из «Предприятия». Клиенты периодически проверяют её и закрываются сами, но это происходит не мгновенно — дайте несколько минут.
- Обновите список активных пользователей в конфигураторе.
- Оставшимся позвоните или закройте у них 1С.
- Если база лежит на терминальном сервере, оставшиеся процессы
1cv8.exeвидно в диспетчере задач на вкладке пользователей.
Если база в общей папке на компьютере или сервере Windows, зависшие подключения видно в оснастке «Управление компьютером»: раздел «Общие папки → Открытые файлы». Там можно закрыть открытый файл 1Cv8.1CD.
Закрытие файла или снятие процесса в момент записи может повредить файловую базу. Делайте это, только когда пользователь точно не работает (ушёл домой, сеанс висит с утра), и только при наличии свежей копии. После такого отключения стоит запустить тестирование и исправление.
Клиент-серверная база (MS SQL, PostgreSQL)
Здесь сеансами управляет кластер 1С, поэтому всё надёжнее. Кроме кнопки в конфигураторе, есть консоль кластера и rac. Сеанс завершается штатно: транзакция откатывается на стороне СУБД, база не повреждается.
Не снимайте процессы rphost и не останавливайте службу агента, чтобы «выгнать всех». Это оборвёт работу всех баз кластера, а не одной.
Другие способы принудительно закрыть сеансы 1С
Консоль администрирования серверов
- Откройте «Администрирование серверов 1С Предприятия».
- Раскройте
Центральные серверы 1С:Предприятия → имя сервера → Кластеры → кластер → Информационные базы → нужная база → Сеансы. - Выделите сеансы (можно несколько, с
CtrlилиShift). - В контекстном меню выберите «Удалить».
Консоль подключается к агенту сервера (порт 1540 по умолчанию). Если в кластере задан администратор, она запросит его имя и пароль.
Если консоль не открывается и пишет про незарегистрированную библиотеку, перерегистрируйте radmin.dll нужной версии платформы командой regsvr32 от имени администратора.
Утилита rac
Для автоматизации есть rac — клиент сервера администрирования ras. Сначала запускают ras (службой или вручную), затем команды:
rac cluster list
rac infobase summary list --cluster=<uuid кластера>
rac session list --cluster=<uuid кластера> --infobase=<uuid базы>
rac session terminate --cluster=<uuid кластера> --session=<uuid сеанса>
Блокировка базы через rac:
rac infobase update --cluster=<uuid кластера> --infobase=<uuid базы> --infobase-user="Администратор" --infobase-pwd="пароль" --sessions-deny=on --denied-message="Обновление базы" --permission-code=12345 --scheduled-jobs-deny=on
После работ блокировку снимают той же командой с --sessions-deny=off и --scheduled-jobs-deny=off. Полный список параметров — в rac help session и rac help infobase.
Из «Предприятия» по одному
В типовых конфигурациях форма «Активные пользователи» в разделе Администрирование → Обслуживание позволяет выделить строку и завершить сеанс конкретного человека. Это работает в клиент-серверной базе. Удобно, когда мешает один «зависший» сотрудник, а остальных трогать не нужно.
Ошибки при отключении пользователей и что с ними делать
Ещё несколько ситуаций, которые встречаются на практике:
- 🧩 Второй конфигуратор мешает обновлению. Коллега открыл конфигуратор той же базы. Его сеанс тоже нужно закрыть — кнопка «Завершить сеансы и повторить» сделает это, но он потеряет несохранённые изменения конфигурации.
- 🔒 Сеанс не удаляется в консоли. Обычно он выполняет долгую операцию, и платформа ждёт отката транзакции. Подождите несколько минут, затем повторите.
- 🌐 Публикация на веб-сервере снова подключается. Сеансы веб-сервисов открываются по запросам извне. На время работ отключите внешнюю систему или поставьте блокировку сеансов.