Почему после обновления платформы 1С продолжает запускаться старая версия?

Системный администратор 1С v8.3 (Управляемые формы) IT и автоматизация бизнеса
← На главную

При обновлении платформы 1С:Предприятие системные администраторы и специалисты нередко сталкиваются с ситуацией: новый релиз успешно установлен на сервере, однако при запуске программы через стартер 1cestart.exe и открытии информационной базы в окне «О программе» по-прежнему отображается предыдущая версия платформы. При этом локальные (файловые) базы могут успешно открываться в новом релизе, а клиент-серверные (SQL) продолжают работать на старом. Разберем по шагам, почему возникает такое поведение и как корректно перевести клиент-серверную систему на новую версию платформы.

Механизм выбора версии платформы программой запуска

Проанализируем логику работы программы запуска 1cestart.exe при открытии баз разного типа:

  1. Файловые базы: стартер анализирует установленные в системе релизы платформы и по умолчанию запускает самый свежий установленный релиз (если в настройках базы или конфигурационном файле 1cestart.cfg явно не зафиксирована конкретная версия).
  2. Клиент-серверные базы (SQL): программа запуска сначала опрашивает рабочий сервер 1С (агент кластера ragent.exe). Сервер сообщает клиенту версию платформы, на которой работает его служба. Стартер 1cestart.exe принудительно ищет на компьютере клиента именно ту версию платформы, которая запущена на сервере, и стартует ее. Если требуемая версия не установлена локально, выдается ошибка о несовпадении версий клиента и сервера.

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

Причины, по которым сервер 1С остается на старой версии

Выясним основные причины, приводящие к сохранению работы службы на прежнем релизе:

  1. Установка платформы «по умолчанию» без серверных компонентов: в стандартном мастере установки Windows флаг на компоненте Сервер 1С:Предприятия 8 по умолчанию снят. Если установку выполнили простым нажатием «Далее-Далее», на компьютер установились только толстый и тонкий клиенты, а серверные модули (включая службу агента кластера) вообще не были установлены.
  2. Служба Windows не была перенастроена на новый каталог: даже если файлы новой платформы скопированы, служба 1C:Enterprise 8.3 Server Agent продолжает указывать на каталог со старым исполняемым файлом ragent.exe.
  3. Служба сервера 1С не была перезапущена: после изменения конфигурации или обновления файлов служба продолжала удерживать старые процессы в оперативной памяти.

Способ 1. Корректная установка серверных компонентов через инсталлятор

Рассмотрим штатный и наиболее безопасный вариант обновления платформы на сервере:

  1. Останавливаем службу сервера 1С через оснастку Windows services.msc (служба 1C:Enterprise 8.3 Server Agent или 1C:Enterprise 8.3 Server Agent (x86-64)).
  2. Запускаем программу установки нового дистрибутива платформы нужной разрядности (32-бит или 64-бит).
  3. В окне выбора компонентов обязательно отмечаем:
    1. 1С:Предприятие 8 (клиентские приложения);
    2. Сервер 1С:Предприятия 8 (основные модули сервера);
    3. Администрирование сервера 1С:Предприятия 8 (утилиты и оснастка управления кластером);
    4. Модули расширения веб-сервера (если планируется работа через веб-клиент, IIS или Apache).
  4. На следующем шаге мастера выбираем пункт Установить 1С:Предприятие как сервис Windows.
  5. Указываем существующего пользователя, от имени которого работает сервер (по умолчанию USR1CV8), и вводим его пароль. Программа установки сама обновит путь к исполняемому файлу службы и выставит необходимые права.
  6. Завершаем установку и запускаем службу сервера.

Способ 2. Обновление пути службы сервера через командную строку

Если серверные компоненты уже установлены в новый каталог, но служба Windows продолжает запускать старый релиз, изменим путь исполняемого файла с помощью системной утилиты sc config. Разберем пример для 64-разрядной службы:

  1. Открываем командную строку (cmd) от имени администратора.
  2. Останавливаем текущую службу сервера: net stop "1C:Enterprise 8.3 Server Agent (x86-64)"
  3. Обновляем параметр binPath, указав путь к новому релизу (например, 8.3.11.3034) с сохранением прежних рабочих портов и каталога кластера srvinfo:
    
    sc config "1C:Enterprise 8.3 Server Agent (x86-64)" binPath= "\"C:\Program Files\1cv8\8.3.11.3034\bin\ragent.exe\" -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d \"C:\Program Files\1cv8\srvinfo\""
    
  4. Запускаем обновленную службу: net start "1C:Enterprise 8.3 Server Agent (x86-64)"

Способ 3. Перерегистрация службы с помощью параметров ragent.exe

Посмотрим на вариант перерегистрации службы с использованием встроенных параметров самого агента сервера 1С:

  1. Заходим в папку bin старой версии платформы и удаляем регистрацию службы:
    
    cd "C:\Program Files\1cv8\8.3.10.2580\bin"
    ragent.exe -rmsrv
    
  2. Переходим в папку bin новой версии платформы и регистрируем службу заново:
    
    cd "C:\Program Files\1cv8\8.3.11.3034\bin"
    ragent.exe -instsrv -usr .\USR1CV8 -pwd "ПарольПользователя" -port 1540 -regport 1541 -range 1560:1591 -d "C:\Program Files\1cv8\srvinfo"
    
  3. Запускаем созданную службу через консоль служб Windows.

Сопутствующие действия после обновления сервера

После успешного запуска службы сервера 1С на новом релизе выполним обязательные регламентные шаги:

  1. Регистрация COM-соединителя: если внешние системы взаимодействуют с 1С через COM, зарегистрируем библиотеку нового релиза в командной строке от имени администратора: regsvr32 "C:\Program Files\1cv8\8.3.11.3034\bin\comcntrc.dll"
  2. Перепубликация баз на веб-сервере: если базы опубликованы на IIS или Apache, откроем конфигуратор базы под новой платформой и заново выполним операцию Администрирование — Публикация на веб-сервере, чтобы веб-сервер начал использовать новые модули расширения (wsisapi.dll).
  3. Установка платформы на клиентские рабочие места: устанавливаем новый релиз платформы на компьютеры пользователей, после чего стартер 1cestart.exe начнет автоматически подключать пользователей к серверной базе на новой версии.
← На главную