Перезапуск конфигурации 1С 8.3: сеанс, кэш, сервер

· 10 мин

Содержание

Чтобы перезапустить конфигурацию в режиме «1С:Предприятие», закройте программу и откройте её заново из ярлыка или окна запуска — сеанс стартует с чистого состояния. Если вы меняли конфигурацию и нужно подтянуть изменения, после обновления базы данных программа сама предложит кнопку перезапуска. Когда база вообще не открывается или ведёт себя странно — запустите её с параметром /ClearCache или вручную удалите каталог кэша.

Под словом «перезапуск» обычно скрываются три разные задачи: перезапустить свой сеанс, применить обновлённую конфигурацию всем пользователям или перезапустить сам сервер приложений. Ниже — что делать в каждом случае, с точными путями меню для платформы 8.3 (интерфейс «Такси»).

Перезапуск сеанса в режиме «1С:Предприятие»

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

  1. Сохраните или проведите открытые документы — несохранённые данные формы потеряются.
  2. Закройте программу: Главное меню → Файл → Выход или крестик в правом верхнем углу.
  3. Запустите базу заново из ярлыка на рабочем столе или из окна запуска 1cestart.exe (список баз).

Если база открывается из списка информационных баз, просто выберите её снова и нажмите 1С:Предприятие.

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

Перезапуск сеанса помогает, когда форма «подвисла», слетела настройка интерфейса или программа ведёт себя непредсказуемо после долгой работы. Для массовых проблем (у всех пользователей) перезапуска одного сеанса мало — смотрите разделы про кэш и сервер.

Отдельно стоит случай веб-клиента: там база открыта в браузере, и «перезапуск» — это закрыть вкладку и открыть адрес публикации заново. Если в браузере тоже что-то залипло, очистите кэш и файлы cookie сайта публикации — веб-клиент хранит часть временных данных на стороне браузера, и старые файлы иногда мешают корректному входу.

Как применить изменения конфигурации без выхода всех пользователей

Если вы вносили правки в конфигураторе и обновили конфигурацию базы данных, работающим пользователям нужно получить эти изменения. Платформа 8.3 умеет делать это динамически.

После команды Конфигурация → Обновить конфигурацию базы данных (F7) в конфигураторе возможны два исхода:

  • Динамическое обновление. Если изменения не затрагивают структуру данных критично, платформа применит их на лету. Пользователи увидят уведомление с предложением перезапустить сеанс и кнопкой перезапуска. Нажав её, они получат новую конфигурацию без полного выхода.
  • Обновление с монопольным доступом. Если изменилась структура таблиц (добавлены реквизиты, измерения, новые объекты метаданных), платформа потребует, чтобы в базе не было активных сеансов. Пользователям придётся выйти, обновление пройдёт, после чего они войдут заново.

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

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

Предупреждение платформы при самом обновлении подскажет, можно ли применить изменения динамически: перед реструктуризацией она прямо перечислит, какие таблицы будут изменены, и запросит монопольный доступ.

Отдельно разберём ситуацию, которая многих сбивает с толку. Пользователь вносит данные, а коллега в это время нажал F7 в конфигураторе и провёл динамическое обновление. У первого всплывает окно: продолжить работу в старой конфигурации или перезапустить сеанс сейчас. Пока сеанс не перезапущен, пользователь работает на прежней версии конфигурации — новые объекты и изменённые формы он не увидит. Поэтому после обновления рабочей базы стоит попросить всех нажать перезапуск по уведомлению, а не откладывать его.

Если же обновление требует монополии, порядок такой: предупредить пользователей, установить блокировку начала сеансов, дождаться выхода работающих, снять зависшие сеансы через консоль кластера, выполнить F7, снять блокировку.

Завершение сеансов через консоль администрирования серверов

В клиент-серверном варианте (есть сервер 1С и база на СУБД) активные сеансы удобно снимать через консоль администрирования — оснастку Администрирование серверов 1С Предприятия.

  1. Откройте консоль, разверните <ваш сервер> → Кластеры → Локальный кластер.
  2. Выберите узел Сеансы — увидите список активных сеансов с пользователями и информационными базами.
  3. Чтобы завершить сеанс, выделите строку и в контекстном меню выберите удаление сеанса.

Завершение сеанса через консоль — это принудительный разрыв: несохранённые данные пользователя пропадут. Снимайте чужие сеансы только когда нужно освободить базу для монопольной операции и люди предупреждены.

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

Для монопольной операции (обновление структуры, загрузка .dt) удобнее на время установить блокировку начала сеансов, снять активные сеансы, выполнить работу и снять блокировку. Так новые пользователи не войдут в середине процесса.

Чистка кэша, когда база не открывается или тормозит

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

Способ 1 — параметр запуска. Запустите базу с параметром /ClearCache. В свойствах ярлыка допишите его в конец строки Объект, например:

"C:\Program Files\1cv8\common\1cestart.exe" ENTERPRISE /ClearCache

Либо в окне запуска: кнопка Изменить для базы → поле Дополнительные параметры запуска → впишите /ClearCache.

Способ 2 — удалить каталог кэша вручную. Полностью закройте все окна 1С и удалите содержимое каталогов:

  • %LOCALAPPDATA%\1C\1cv8
  • %APPDATA%\1C\1cv8

Вставьте путь в адресную строку проводника, откройте папку базы (её имя — набор символов) и удалите временные подкаталоги. При следующем запуске кэш соберётся заново.

Удаление кэша не трогает ваши данные в базе — это только локальные временные файлы текущего компьютера. Настройки списка баз в файле ibases.v8i при этом сохраняются.

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

Перезапуск в режиме «Конфигуратор»

Конфигуратор — отдельный режим запуска той же базы. Если он завис или вы хотите стартовать его заново, закройте окно конфигуратора и откройте базу снова, выбрав в окне запуска кнопку Конфигуратор вместо 1С:Предприятие.

Полезно знать про монопольный доступ конфигуратора:

  • Для редактирования конфигурации, разработки и просмотра монополия не нужна — конфигуратор можно открыть параллельно с работающими пользователями.
  • Монопольный доступ требуется только для операций, меняющих структуру базы: обновление конфигурации БД с реструктуризацией, Тестирование и исправление, загрузка информационной базы из файла .dt, выгрузка в монопольном режиме.

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

Загрузка базы из .dt (Администрирование → Загрузить информационную базу) полностью заменяет текущую базу. Выполняйте её только на копии или с гарантией, что текущие данные сохранены.

Управление сеансами из командной строки (rac)

В клиент-серверном варианте сеансами можно управлять без консоли — утилитой rac. Она подключается к серверу администрирования ras (по умолчанию порт 1545). Это удобно для скриптов и удалённого обслуживания.

Базовая последовательность:

rem Список кластеров — берём идентификатор кластера
rac cluster list

rem Список сеансов в кластере
rac session list --cluster=<идентификатор кластера>

rem Завершение конкретного сеанса
rac session terminate --cluster=<идентификатор кластера> --session=<идентификатор сеанса>

Идентификаторы (uuid) вы возьмёте из вывода предыдущих команд: сначала cluster list даёт uuid кластера, затем session list — uuid сеансов.

Полный список команд и их параметров всегда под рукой: выполните rac help или rac session help. Не угадывайте параметры — сверяйтесь со справкой своей версии платформы.

Чтобы rac работал, на сервере должна быть запущена служба сервера администрирования ras. Если команда не подключается, проверьте, что служба ras запущена и слушает порт 1545 (или тот, что задан у вас). При запуске rac без указания адреса утилита обращается к localhost:1545; для удалённого сервера укажите его явно: rac <адрес сервера>:1545 cluster list.

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

rac session terminate обрывает сеанс мгновенно, как и консоль. Применяйте точечно и только к нужным сеансам, иначе пользователь потеряет несохранённую работу.

Диагностика и перезапуск сервера приложений

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

Что проверить перед перезапуском службы:

  • 🔌 Запущена ли служба агента сервера 1С:Предприятие 8.3 (Агент сервера) в оснастке services.msc.
  • 🧩 Отвечает ли СУБД (PostgreSQL или MS SQL) — если упала база данных, перезапуск 1С не поможет.
  • 💾 Есть ли место на диске сервера под временные файлы кластера и журнал регистрации.
  • 🔢 Совпадают ли версии: клиент должен быть версии не ниже версии сервера.

Клиент при работе обращается сначала к агенту кластера (порт 1540), затем к менеджеру кластера (порт 1541) и рабочим процессам (их диапазон портов задаётся в свойствах рабочего сервера). Если клиент «не видит» сервер, проверьте, что эти порты открыты в брандмауэре.

Перезапуск службы агента сервера:

  1. Предупредите пользователей и убедитесь, что активной монопольной операции (обновление, загрузка .dt) не идёт.
  2. Откройте services.msc, найдите службу агента сервера 1С.
  3. Выполните Перезапустить в контекстном меню службы (или net stop и затем net start по имени службы).

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

Перед перезапуском службы сервера
Выполнено: 0 / 5

Если после перезапуска службы база так и не поднимается, смотрите журнал регистрации и технологический журнал кластера — там будет причина: нехватка памяти рабочего процесса, недоступность СУБД, ошибка лицензирования.

Пара ориентиров, чтобы не перезапускать сервер вслепую:

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

Частые ошибки при перезапуске

  • Снимают чужие сеансы «на всякий случай». Принудительное завершение всегда теряет несохранённые данные пользователя. Делайте это только ради монопольной операции и с предупреждением.
  • Чистят кэш, когда проблема на сервере. Если база не открывается у всех — кэш на одном компьютере ни при чём. Сначала проверьте сервер и СУБД.
  • Перезапускают службу агента в рабочее время. Это рвёт сеансы всех баз сервера. Только технологическое окно или реальная авария.
  • Путают монопольный доступ с обычной работой конфигуратора. Открыть конфигуратор можно параллельно с пользователями; монополия нужна лишь для реструктуризации, .dt и тестирования.
  • Обновляют рабочую базу без копии. Реструктуризацию нельзя «откатить кнопкой» — резервная копия обязательна.

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

Чем «перезапустить сеанс» отличается от «перезапустить сервер»?
Перезапуск сеанса касается только вашего окна: закрыли программу и открыли заново. Перезапуск службы агента сервера затрагивает все базы кластера и обрывает сеансы всех пользователей.
Нужно ли выгонять пользователей, чтобы обновить конфигурацию?
Не всегда. Мелкие изменения (формы, модули) платформа применяет динамически — пользователи лишь нажимают перезапуск по уведомлению. Монопольный доступ нужен только при изменении структуры данных.
Удаление кэша сотрёт мои данные?
Нет. Кэш — это локальные временные файлы на вашем компьютере. Данные хранятся в базе на сервере или в файле базы и при чистке кэша не меняются.
Почему после параметра `/ClearCache` первый запуск долгий?
Платформа заново собирает кэш форм. Это разовая задержка — следующий вход уже быстрый.
Можно ли перезапустить службу сервера удалённо?
Да, через services.msc с подключением к удалённому компьютеру или командой управления службами по сети. Помните, что остановка агента оборвёт все сеансы сервера.