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

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

Как войти в монопольный режим в 1С 8

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

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

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

Когда монопольный режим обязателен

Не все операции требуют монопольного доступа, поэтому важно понимать, когда он действительно нужен. Это помогает не останавливать работу компании лишний раз.

Монопольный режим обязателен для:

  • обновления конфигурации и динамического обновления с реструктуризацией;
  • загрузки и выгрузки информационной базы в файл dt;
  • тестирования и исправления базы с включёнными операциями изменения данных;
  • удаления помеченных объектов в монопольном варианте;
  • изменения свойств конфигурации, затрагивающих структуру базы данных;
  • объединения конфигураций и загрузки конфигурации из файла.

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

Подготовка: что сделать до включения монопольного режима

Главное правило — предупредить пользователей заранее. Принудительное завершение сеансов обрывает незаписанные документы, и данные, введённые за последние минуты, могут быть потеряны. За 15–30 минут до обслуживания отправьте сообщение пользователям с просьбой завершить работу.

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

Перед операциями, меняющими структуру базы (обновление, тестирование с исправлением), сделайте резервную копию. Для файловой базы это копирование файла 1Cv8.1CD или выгрузка в dt, для серверной — средство резервного копирования СУБД. Это единственная защита от необратимых последствий при сбое.

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

Файловая база — самый простой случай. Монопольный режим здесь устанавливается автоматически, если к базе не подключён никто, кроме вас.

Порядок действий для файловой базы
  1. 1
    Попросите всех пользователей закрыть 1С и убедитесь, что программа закрыта на всех компьютерах, включая терминальные сессии.
  2. 2
    Проверьте, что на сервере и компьютерах пользователей не осталось процессов 1cv8.exe и 1cv8c.exe.
  3. 3
    Откройте базу через конфигуратор (меню «Конфигурация» — «Конфигурация базы данных» должна быть доступна).
  4. 4
    Если монопольный режим не установился, найдите активные сеансы через «Администрирование» — «Активные пользователи» в режиме предприятия.
  5. 5
    После завершения работ закройте конфигуратор — монопольный доступ снимется автоматически.

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

Если база лежит в сетевой папке, убедитесь, что никто не открыл её по сети с другого рабочего места. Также монопольному доступу мешает файл 1Cv8.1CL и другие служебные блокировки — после аварийного завершения иногда помогает перезагрузка компьютера, на котором остался процесс.

Как войти в монопольный режим в клиент-серверной базе

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

Блокировка базы через консоль администрирования

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

Код разрешения — удобный механизм: база заблокирована для всех, но вы сможете войти, добавив параметр /UC код в строку запуска. Это позволяет работать в режиме «Предприятие» (например, для удаления помеченных объектов), пока остальные пользователи не имеют доступа.

Завершение активных сеансов

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

Перед удалением сеансов проверьте колонку «Начало работы»: фоновые задания и сеансы COM-соединений часто перезапускаются автоматически. Если обмен данными настроен по расписанию, отключите его расписание заранее, иначе сеанс появится снова через минуту после удаления.
ПЗ
Практическое замечание

Запуск конфигуратора с параметром

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

"C:\Program Files\1cv8\<версия>\bin\1cv8.exe" DESIGNER /S"Сервер\ИмяБазы" /N"Администратор" /P"Пароль" /DisableStartupDialogs

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

Как проверить, что монопольный режим установлен

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

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

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

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

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

Только ваш сеанс конфигуратора

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

Остаются сеансы пользователей или фоновых заданий

Обновление конфигурации базы данных
Норма

Реструктуризация запускается без ошибок

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

Ошибка разделённого доступа к базе

Блокировка начала сеансов в свойствах базы
Норма

Флаг включён, задано сообщение пользователям

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

Флаг снят — пользователи могут подключиться заново

Типичные ошибки и как их исправить

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

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

Типичные ошибки
01
Забыли про фоновые задания — обмен данными создаёт новый сеанс каждые несколько минут и срывает обновление.
02
Включили блокировку сеансов, но не удалили уже активные — пользователи продолжают работать, а администратор ждёт.
03
Не сделали резервную копию перед реструктуризацией — при сбое данные восстанавливать неоткуда.
04
Забыли снять блокировку после работ — утром сотрудники не могут войти в базу.

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

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

Можно ли войти в монопольный режим, не отключая пользователей?

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

Что делать, если сеанс «повис» и не удаляется из консоли?

Попробуйте удалить сеанс повторно через несколько секунд. Если не помогает, завершите соответствующий рабочий процесс rphost на сервере 1С через диспетчер задач или консоль кластера (принудительное завершение процесса затронет все сеансы этого процесса, поэтому делайте это вне рабочего времени). Крайняя мера — перезапуск службы агента сервера 1С.

Почему после обновления пользователи не могут войти в базу?

Чаще всего забыли снять блокировку начала сеансов в свойствах базы в консоли администрирования. Откройте свойства информационной базы и уберите соответствующий флаг. Также проверьте, не истекло ли время блокировки, если оно задавалось вручную.

Нужен ли монопольный режим для удаления помеченных объектов?

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

Как войти в заблокированную базу, если нужно поработать в режиме «Предприятие»?

Используйте код разрешения, заданный при включении блокировки. Добавьте в параметры запуска базы /UC ваш_код — сеанс будет разрешён, несмотря на блокировку. Остальные пользователи без кода войти не смогут.

Монопольный режим нужен для выгрузки базы в файл dt?

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

Итог

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

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