Администрирование · 9 мин
Как перевести 1С в монопольный режим
Как перевести базу 1С в монопольный режим: способы через конфигуратор и консоль кластера, завершение сеансов, снятие блокировки, типичные ошибки и проверка результата.
Монопольный режим в 1С — это состояние информационной базы, при котором с ней работает только один сеанс, а все остальные подключения блокируются. Он требуется для операций, которые нельзя выполнять при активных пользователях: загрузка и выгрузка базы, обновление конфигурации с изменением структуры данных, тестирование и исправление, полное удаление помеченных объектов, массовая перенумерация.
Способ перевода зависит от режима работы базы. В файловом варианте достаточно выгнать пользователей и установить блокировку через конфигуратор. В клиент-серверном варианте блокировка сеансов настраивается в консоли кластера серверов 1С, а активные соединения завершаются принудительно. Ниже разобраны оба сценария, а также снятие монопольного доступа и типичные ошибки.
Когда монопольный режим действительно нужен
Платформа сама сообщает о необходимости монопольного доступа: при попытке выполнить операцию с активными сеансами появляется ошибка «Конфликт блокировок при выполнении транзакции» или «Требуется монопольный доступ». Не стоит включать монопольный режим «на всякий случай» — это останавливает работу всех пользователей.
Типовые операции, требующие монопольного доступа:
- обновление конфигурации, затрагивающее структуру метаданных (реструктуризация таблиц);
- загрузка базы из файла .dt и полная выгрузка;
- тестирование и исправление информационной базы;
- удаление помеченных объектов в некоторых конфигурациях;
- изменение настроек совместимости и отдельных параметров базы.
Подготовка: завершение сеансов пользователей
Перед включением монопольного режима в базе не должно быть активных сеансов, кроме вашего. Сначала предупредите сотрудников и попросите завершить работу штатно — принудительное завершение может привести к потере несохранённых данных в открытых документах.
Посмотреть список активных подключений можно двумя способами. В файловой базе: Конфигуратор → Администрирование → «Активные пользователи». В клиент-серверной — в консоли кластера: ветка сервера → кластер → «Сеансы». Там же видно, кто подключён, откуда и как давно.
Если пользователь не отвечает или сеанс «завис», завершите его принудительно: в консоли кластера выделите сеанс и выберите «Удалить». В файловом варианте прямого инструмента нет — придётся дождаться закрытия или перезапустить компьютер, на котором открыта база, либо убить процесс 1cv8.exe на машине пользователя.
Монопольный режим в файловой базе
Файловый вариант — самый простой случай. Порядок действий:
- Убедитесь, что все пользователи вышли: Администрирование → «Активные пользователи» должен показывать только ваш сеанс.
- Откройте Конфигуратор под пользователем с правами администратора.
- Перейдите в меню Администрирование → «Установить монопольный режим» (в новых версиях — «Монопольный режим»).
- Подтвердите установку. Если появится сообщение о наличии других сеансов — значит, кто-то ещё подключён.
После этого база доступна только вам. Новые пользователи при попытке входа увидят сообщение о монопольном доступе. Выполните нужную операцию (обновление, загрузку, тестирование), а затем снимите режим тем же пунктом меню.
- 1Предупредите пользователей и дождитесь выхода
- 2Проверьте список активных пользователей в конфигураторе
- 3Администрирование → Установить монопольный режим
- 4Выполните требуемую операцию (обновление, загрузка, ТиИ)
- 5Снимите монопольный режим и сообщите пользователям о готовности
Монопольный режим в клиент-серверной базе
В клиент-серверном варианте прямой команды «монопольный режим» нет — используется блокировка сеансов через консоль администрирования серверов 1С. Откройте консоль (1CV8 Servers.msc) на сервере, разверните ветку кластера, найдите свою информационную базу и откройте её свойства.
В свойствах базы установите флажок «Блокировка начала сеансов включена». Дополнительно задайте время начала и окончания блокировки, сообщение для пользователей и код разрешения — параметр, который позволит войти в базу, несмотря на блокировку (его указывают в строке запуска как /UC<код>). Это удобно, чтобы самому подключиться через тонкий клиент, пока остальные заблокированы.
Далее завершите активные сеансы: в разделе «Сеансы» выделите все сеансы, кроме своего, и удалите их. Фоновые задания тоже могут мешать — проверьте раздел «Соединения» и при необходимости отключите выполнение регламентных заданий в свойствах базы.
Регламентные задания часто забывают отключить, и именно они не дают установить монопольный доступ: фоновый сеанс перезапускается снова и снова. В свойствах базы в консоли кластера есть отдельный флажок «Блокировка регламентных заданий включена» — ставьте его вместе с блокировкой сеансов.
Снятие монопольного режима и блокировки
После завершения работ обязательно верните базу в обычное состояние. В файловом варианте: Администрирование → снять флажок «Монопольный режим». В клиент-серверном: в свойствах базы в консоли кластера уберите флажки блокировки сеансов и регламентных заданий.
Если забыть снять блокировку, пользователи не смогут войти, а регламентные задания (обмены, резервное копирование средствами 1С, рассылки) не будут выполняться. Частая ситуация: администратор обновил базу вечером, забыл снять блокировку, а утром бухгалтерия не может начать работу.
Если конфигуратор «упал» или был закрыт принудительно в момент монопольного доступа, файловая база может остаться заблокированной. Проверьте каталог базы: остаточные блокировки иногда снимаются повторным входом в конфигуратор и явным снятием режима. В клиент-серверном варианте блокировка хранится в свойствах базы и снимается через консоль независимо от состояния конфигуратора.
Как проверить результат
Только ваш сеанс
Есть чужие сеансы или фоновые задания
Сообщение о блокировке (режим работает)
Пользователь входит свободно — блокировка не включена
Вход выполняется, регламентные задания запускаются
Сообщение о блокировке сохраняется — режим не снят
Типичные ошибки и их решение
Самая частая проблема — сообщение «Не удалось установить монопольный режим» при видимости пустого списка пользователей. Причины: зависший сеанс на сервере, активное фоновое задание, открытое соединение от внешней программы или веб-сервиса. Проверяйте не только «Сеансы», но и «Соединения» в консоли кластера.
Перед любой операцией в монопольном режиме сделайте резервную копию: выгрузку .dt для файловой базы или копию средствами СУБД для клиент-серверной. Это единственная страховка, если реструктуризация прервётся на середине.
Часто задаваемые вопросы
Чем монопольный режим отличается от блокировки сеансов?
Монопольный режим — состояние, когда с базой работает один сеанс. Блокировка сеансов — механизм, запрещающий новые подключения. В клиент-серверной базе монопольный доступ достигается комбинацией: блокировка новых сеансов плюс завершение существующих.
Можно ли перевести базу в монопольный режим без прав администратора?
Нет. Установка монопольного режима в конфигураторе и изменение свойств базы в консоли кластера требуют административных прав на базу (и на кластер — для клиент-серверного варианта).
Пользователь вышел, но сеанс в консоли остался. Что делать?
Это «спящий» или зависший сеанс — он завершится по тайм-ауту, но ждать необязательно: выделите его в консоли кластера и удалите вручную. Проверьте также раздел «Соединения» — иногда соединение остаётся без сеанса.
Нужен ли монопольный режим для динамического обновления?
Нет, динамическое обновление как раз предназначено для работы без выгона пользователей, но оно применимо только при небольших изменениях без реструктуризации. Если платформа сообщает, что динамическое обновление невозможно, потребуется монопольный доступ.
Как войти в заблокированную базу, пока действует блокировка сеансов?
Если при установке блокировки задан код разрешения, запустите клиент с параметром /UC<код> — например, добавьте его в строку подключения. Без кода войти сможет только сеанс, уже активный на момент блокировки.
Что будет, если не снять монопольный режим в файловой базе?
Пользователи будут получать сообщение о монопольном доступе при входе. Режим снимается тем же пунктом меню конфигуратора; если конфигуратор недоступен, помогает перезапуск всех процессов, держащих базу, и повторная попытка снятия.
Что важно запомнить
Монопольный режим нужен для реструктуризации, загрузки и тестирования базы. Порядок всегда один: предупредить пользователей, завершить сеансы и фоновые задания, включить блокировку, выполнить работу, снять блокировку. Перед началом — обязательно резервная копия, после окончания — проверка, что пользователи могут войти.