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

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

Как перезапустить базу 1С на сервере

Как безопасно перезапустить базу 1С на сервере: перезапуск службы агента, кластера, SQL Server и PostgreSQL. Порядок действий, риски, проверка результата.

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

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

Ниже разобраны все основные сценарии: от мягкого завершения сеансов через консоль кластера до перезапуска служб на Windows и Linux, а также способы проверить, что база после перезапуска работает корректно.

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

Прежде чем что-то перезапускать, определите, на каком уровне возникла проблема. В клиент-серверной архитектуре 1С участвуют три компонента: клиентские приложения, сервер 1С:Предприятия (агент, менеджер и рабочие процессы кластера) и сервер СУБД (MS SQL Server, PostgreSQL, Oracle или IBM Db2). Перезапуск каждого уровня имеет свои последствия.

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

Маршрут решения

Как выбрать действие

Завис один сеанс или пользователь не может войтиУдалите сеанс в консоли кластера без перезапуска служб
rphost съедает память или CPU, ошибки у многих пользователейПерезапустите рабочие процессы или службу агента сервера 1С
Ошибки соединения с базой данных, СУБД не отвечаетОстановите агент 1С, перезапустите службу СУБД, затем запустите агент
Ничего не помогает, системные ошибки ОСПланово перезагрузите сервер целиком после завершения сеансов

Подготовка: завершение сеансов и блокировка базы

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

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

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

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

На сервере Windows откройте оснастку служб: нажмите Win+R, введите services.msc и подтвердите. В списке найдите службу «Агент сервера 1С:Предприятия» с указанием версии платформы (например, 8.3.22). Через контекстное меню выберите «Перезапустить» — служба будет остановлена и запущена заново.

Ту же операцию можно выполнить из командной строки с правами администратора. Имя службы зависит от версии платформы, типовой шаблон — 1C:Enterprise 8.3 Server Agent с суффиксом версии. Команды остановки и запуска:

batch
net stop "1C:Enterprise 8.3 Server Agent (x86-64)"
net start "1C:Enterprise 8.3 Server Agent (x86-64)"

После запуска подождите 1–2 минуты: агент инициализирует кластер, запускает менеджер кластера (rmngr) и рабочие процессы (rphost). Проверьте в диспетчере задач, что процессы ragent, rmngr и rphost появились и не потребляют аномально много ресурсов.

Перезапуск сервера 1С на Linux

На Linux-сервере агент сервера 1С обычно установлен как systemd-сервис. Команда перезапуска зависит от версии платформы, типовое имя службы — srv1cv83 (для платформы 8.3). Выполните под пользователем с правами sudo:

bash
sudo systemctl restart srv1cv83
sudo systemctl status srv1cv83

Команда status покажет состояние службы: значение active (running) означает успешный запуск. Если служба не стартует, смотрите журнал через journalctl -u srv1cv83 -e — типовые причины: занятые порты (1540–1541, 1560–1591), недостаток прав у пользователя usr1cv8 или повреждённые файлы кластера в каталоге /home/usr1cv8/.1cv8.

Если перезапуск через systemd недоступен (агент запущен вручную), корректно завершите процессы: сначала отправьте SIGTERM процессу ragent, дождитесь остановки rphost, затем запустите агент штатной командой. Убийство процессов через kill -9 оставляет «хвосты» в реестре кластера и используется только как крайняя мера.

Перезапуск СУБД: когда это нужно и как сделать безопасно

Перезапуск SQL Server или PostgreSQL требуется редко: при зависании самой СУБД, после изменения параметров конфигурации, требующих перезапуска, или при утечках памяти на стороне СУБД. Перед перезапуском обязательно остановите агент сервера 1С — иначе активные соединения оборвутся посреди транзакций.

Для MS SQL Server перезапуск выполняется через SQL Server Configuration Manager (выберите службу SQL Server (MSSQLSERVER) — «Перезапустить») или командой net stop mssqlserver с последующим net start mssqlserver. Для PostgreSQL на Linux используйте sudo systemctl restart postgresql с указанием версии кластера, если их несколько.

После запуска СУБД убедитесь, что база данных доступна: подключитесь через Management Studio или psql и выполните простой запрос. Только после этого запускайте агент сервера 1С и снимайте блокировку сеансов.

Проверка результата после перезапуска

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

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

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

Процессы на сервере
Норма

ragent, rmngr и один или несколько rphost запущены, нагрузка умеренная

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

rphost отсутствует или сразу потребляет 90–100% CPU

Консоль кластера
Норма

Кластер раскрывается, видны рабочие процессы и базы

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

Кластер не отвечает, ошибка подключения консоли

Вход в базу
Норма

Тонкий клиент или веб-клиент открывает базу за обычное время

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

Ошибка соединения с сервером или СУБД при входе

Журнал регистрации и журнал ОС
Норма

Нет новых критических ошибок после запуска

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

Повторяющиеся ошибки соединения, дампы процессов

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

Типичные ошибки и как их избежать

Типичные ошибки
01
Перезапуск службы без завершения сеансов — обрыв транзакций и риск повреждения данных
02
Перезапуск СУБД при работающем агенте 1С — массовые ошибки соединений и зависшие процессы rphost
03
kill -9 процессов 1С на Linux — повреждение файлов кластера, база не стартует до очистки каталога кластера
04
Перезапуск во время обновления конфигурации — реструктуризация прерывается, база требует восстановления
05
Отсутствие резервной копии перед работами — при сбое нечего восстанавливать

Отдельная ошибка — путать перезапуск сервера 1С с перезапуском самого сервера как машины. Полная перезагрузка ОС нужна редко (после установки обновлений Windows, при системных сбоях) и занимает значительно больше времени. В большинстве случаев достаточно перезапуска служб.

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

Итог

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

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

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

Можно ли перезапустить базу 1С, не отключая пользователей?

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

Чем отличается перезапуск рабочего процесса от перезапуска службы агента?

Рабочий процесс rphost можно перезапустить точечно (или настроить автоматический перезапуск по расписанию и по объёму памяти в свойствах рабочего сервера кластера) — это освобождает память без полной остановки сервера. Перезапуск агента останавливает весь кластер целиком, включая менеджер кластера и все рабочие процессы.

Как перезапустить базу, если она файловая, но лежит на сервере?

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

Что делать, если служба агента 1С зависла в состоянии «Остановка»?

Определите PID процесса ragent командой sc queryex с именем службы на Windows или через ps aux | grep ragent на Linux. Завершите процесс принудительно (taskkill /PID на Windows, kill на Linux), затем запустите службу заново. Если ситуация повторяется регулярно — проверяйте технологический журнал и версию платформы на наличие известных ошибок.

Как часто нужно перезапускать сервер 1С в профилактических целях?

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

Нужна ли резервная копия перед обычным перезапуском?

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