Администрирование · 10 мин
Монопольный режим в 1С: как включить и зачем он нужен
Как включить монопольный режим в 1С 8.3 через конфигуратор и режим предприятия, зачем он нужен, что делать при ошибке занятости и как безопасно завершить сеансы пользователей.
Монопольный режим в 1С — это состояние информационной базы, при котором с ней работает только один пользователь, а все остальные сеансы завершены или заблокированы. Без монопольного доступа невозможно выполнить многие критичные операции: обновление конфигурации, загрузку данных из dt-файла, тестирование и исправление, изменение структуры метаданных. Если база файловая, достаточно, чтобы никто не открыл её; если клиент-серверная — потребуется дополнительно заблокировать подключения на сервере или в консоли кластера.
Чаще всего с необходимостью включить монопольный режим сталкиваются при обновлении конфигурации: 1С выдаёт сообщение «Ошибка исключительной блокировки информационной базы» или «Информационная база занята». Это означает, что в базе остаются активные сеансы — пользователей, фоновых заданий, веб-сервисов или COM-соединений. Ниже разобраны все способы включения монопольного режима, типичные причины ошибок и безопасный порядок действий.
Когда монопольный режим обязателен
Платформа 1С требует исключительного доступа не для всех операций, а только для тех, что меняют структуру базы или требуют целостного состояния данных. К таким операциям относятся обновление конфигурации базы данных, загрузка информационной базы из файла dt, тестирование и исправление, изменение корневых свойств конфигурации, а также массовая реструктуризация таблиц.
Ряд операций формально допускает работу без монопольного режима, но на практике безопаснее выполнять их в одиночестве: свёртку базы, групповое перепроведение документов, загрузку больших объёмов данных обработками. Одновременная работа пользователей в этот момент может привести к конфликтам блокировок, неполной обработке данных или ошибкам, которые сложно диагностировать.
Признак того, что режим нужен прямо сейчас, — сообщение об ошибке исключительной блокировки при попытке выполнить операцию. Платформа сама укажет, что база занята, и предложит повторить попытку позже.
Подготовка: что сделать до включения
Перед переводом базы в монопольный режим предупредите пользователей о времени остановки работы. Принудительное завершение сеанса обрывает незавершённые операции: незаписанный документ или непроведённая обработка будут потеряны. Разумный запас — 10–15 минут на сохранение данных и выход из программы.
Убедитесь, что у вас есть актуальная резервная копия. Для файловой базы это копия файла 1Cv8.1CD или выгрузка в dt, для клиент-серверной — штатный бэкап средствами СУБД (MS SQL, PostgreSQL). Монопольный режим сам по себе безопасен, но операции, ради которых он включается (обновление, тестирование и исправление), способны повредить данные при сбое.
Проверьте, что у вашей учётной записи есть права администратора в базе и, для клиент-серверного варианта, доступ к консоли кластера серверов 1С. Без этих прав завершить чужие сеансы и установить блокировку не получится.
Как включить монопольный режим в файловой базе
В файловом варианте монопольный доступ устанавливается автоматически: достаточно, чтобы базу не открывал никто, кроме вас. Попросите всех пользователей выйти из программы, закройте открытые у себя копии 1С:Предприятия и запустите конфигуратор. Если других сеансов нет, база откроется в монопольном режиме без дополнительных действий.
Проверить, кто ещё держит базу, можно в конфигураторе: меню «Администрирование» → «Активные пользователи». В списке будут видны все текущие сеансы с именами пользователей и компьютерами. Если пользователь физически ушёл, а сеанс «висит», закройте процесс 1cv8.exe на его компьютере или перезагрузите компьютер, на котором остался открытый сеанс.
Отдельная ситуация — база опубликована на веб-сервере или к ней подключаются по сети через общую папку. В этом случае зависший сеанс может находиться на стороне веб-сервера: помогает перезапуск службы веб-сервера (IIS или Apache) либо временное отключение публикации.
Монопольный режим в клиент-серверной базе
В клиент-серверном варианте простого выхода пользователей недостаточно: новые сеансы могут открываться в любой момент, а фоновые задания запускаются сервером автоматически. Поэтому порядок такой: сначала установить блокировку соединений, затем завершить активные сеансы, и только потом выполнять операцию.
- 1Откройте консоль кластера серверов 1С и найдите нужную информационную базу
- 2В свойствах базы установите флаг «Блокировка регламентных заданий включена» и задайте сообщение о блокировке сеансов с датой начала
- 3Завершите активные сеансы: список сеансов базы → выделить все → «Удалить»
- 4Запустите конфигуратор с параметром разрешения доступа /UC с кодом блокировки, если он задан
- 5Выполните операцию (обновление, загрузку), затем снимите блокировку в свойствах базы
Блокировка сеансов устанавливается в свойствах информационной базы в консоли кластера: поля «Начало блокировки сеансов», «Код разрешения» и «Сообщение блокировки». Пользователи при попытке входа увидят ваш текст, например «Идёт обновление, работа возобновится в 18:00». Код разрешения понадобится вам самому для входа в обход блокировки.
Запуск конфигуратора с обходом блокировки выполняется из командной строки или через дополнительные параметры запуска в списке баз:
"C:\Program Files\1cv8\bin\1cv8.exe" DESIGNER /S ServerName\BaseName /UC КодРазрешенияАльтернатива консоли кластера — внешняя обработка или стандартная функция установки блокировки сеансов из режима «Предприятие» (в типовых конфигурациях: «Администрирование» → «Обслуживание» → «Блокировка работы пользователей», если подсистема присутствует). Этот способ удобен, когда доступа к консоли сервера нет, но есть права администратора в самой базе.
Что делать при ошибке «база занята»
Ошибка исключительной блокировки означает, что в базе остались соединения, которые вы не учли. Источники бывают неочевидными: фоновые задания, COM-соединения из других программ, открытые обработки обмена, сеансы веб-сервисов, подключения из мобильных клиентов или из сторонних программ через OLE.
Виден в списке активных пользователей или в консоли кластера
Отключите блокировку регламентных заданий в свойствах базы
Ищите процессы на компьютерах с интеграциями, перезапустите веб-сервер
Завершите процесс 1cv8.exe или rphost с устаревшим сеансом
Проверяйте список соединений в консоли кластера не только по сеансам, но и по разделу «Соединения» — там видны подключения, у которых сеанс ещё не создан или уже разорван, но соединение удерживается. Удаление таких соединений часто решает проблему, когда список сеансов пуст, а ошибка остаётся.
В файловой базе зависшую блокировку иногда удаётся снять, удалив или переименовав служебный файл блокировок рядом с файлом базы, но делать это стоит только при полной уверенности, что все процессы, работавшие с базой, завершены. Иначе есть риск повреждения данных.
Безопасное завершение сеансов пользователей
Аккуратный сценарий — не «выкидывать» пользователей мгновенно, а дать им время завершить работу. Установите блокировку сеансов с началом через 10–15 минут и с понятным сообщением. За это время активные пользователи сохранят данные и выйдут сами, а новые войти уже не смогут.
Принудительное завершение сеанса в консоли кластера — крайняя мера. Незавершённые транзакции при этом откатываются, но данные, которые пользователь вводил и не записал, теряются безвозвратно. Если сеанс не удаляется из консоли, помогает завершение рабочего процесса rphost на сервере, однако это затронет всех пользователей, обслуживаемых этим процессом.
Как проверить результат и снять режим
Признак успешного монопольного доступа — операция (обновление, загрузка, тестирование) запускается без сообщения о занятости базы. В конфигураторе в списке активных пользователей должен остаться только ваш сеанс. В клиент-серверном варианте дополнительно проверьте, что флаг блокировки регламентных заданий установлен и фоновые задачи не выполняются.
После завершения работ снимите блокировку в обратном порядке: закройте конфигуратор, в консоли кластера уберите даты блокировки сеансов и код разрешения, отключите блокировку регламентных заданий. Затем попросите одного из пользователей войти в базу и убедитесь, что вход проходит штатно и данные на месте.
Как проверить результат
Только ваш сеанс администратора
Остаются чужие или фоновые сеансы
Нет сообщения «база занята»
Ошибка исключительной блокировки повторяется
Программа открывается, данные доступны
Сообщение о блокировке сохраняется
Что важно запомнить
Монопольный режим — это единственный сеанс к базе плюс заблокированные фоновые задания. Порядок безопасной работы: предупредить пользователей, сделать копию, установить блокировку, завершить сеансы, выполнить операцию, снять блокировку и проверить вход.
Частые вопросы
Можно ли включить монопольный режим, не выгоняя пользователей?
Нет, само определение режима исключает другие сеансы. Но можно смягчить процесс: установите блокировку с отложенным началом и сообщением, чтобы пользователи вышли сами в течение заданного времени, а принудительно завершайте только оставшиеся сеансы.
Что делать, если забыл код разрешения блокировки?
Откройте консоль кластера серверов, найдите информационную базу и в её свойствах очистите поля блокировки сеансов и кода разрешения. Если доступа к консоли нет, обратитесь к администратору сервера 1С — изнутри заблокированной базы снять блокировку без кода нельзя.
Почему после обновления пользователи всё равно не могут войти?
Чаще всего забыта блокировка сеансов или блокировка регламентных заданий в свойствах базы. Проверьте оба параметра в консоли кластера. Реже причина в том, что обновление конфигурации базы данных не было завершено до конца — тогда нужно снова открыть конфигуратор и принять обновление.
Можно ли обновить конфигурацию без монопольного режима?
Динамическое обновление частично позволяет это для отдельных изменений, не затрагивающих структуру данных, но оно считается аварийным сценарием: пользователи продолжают работать со старой версией метаданных, что чревато ошибками. Штатный и безопасный путь — монопольный режим.
База файловая, все вышли, а ошибка занятости остаётся. Что проверить?
Убедитесь, что на всех компьютерах закрыты процессы 1cv8.exe, включая тонкий и веб-клиент. Проверьте, не опубликована ли база на веб-сервере и нет ли к ней подключений через COM из других программ. Перезапуск компьютера, с которого база открывалась последней, обычно снимает зависшую блокировку.