При обновлении платформы 1С:Предприятие системные администраторы и специалисты нередко сталкиваются с ситуацией: новый релиз успешно установлен на сервере, однако при запуске программы через стартер 1cestart.exe и открытии информационной базы в окне «О программе» по-прежнему отображается предыдущая версия платформы. При этом локальные (файловые) базы могут успешно открываться в новом релизе, а клиент-серверные (SQL) продолжают работать на старом. Разберем по шагам, почему возникает такое поведение и как корректно перевести клиент-серверную систему на новую версию платформы.
Проанализируем логику работы программы запуска 1cestart.exe при открытии баз разного типа:
1cestart.cfg явно не зафиксирована конкретная версия).ragent.exe). Сервер сообщает клиенту версию платформы, на которой работает его служба. Стартер 1cestart.exe принудительно ищет на компьютере клиента именно ту версию платформы, которая запущена на сервере, и стартует ее. Если требуемая версия не установлена локально, выдается ошибка о несовпадении версий клиента и сервера.Таким образом, если служба сервера 1С:Предприятия осталась работать на старом релизе, клиентское приложение всегда будет запускаться в старой версии платформы, независимо от того, сколько новых релизов установлено на клиентских и серверных машинах.
Выясним основные причины, приводящие к сохранению работы службы на прежнем релизе:
Сервер 1С:Предприятия 8 по умолчанию снят. Если установку выполнили простым нажатием «Далее-Далее», на компьютер установились только толстый и тонкий клиенты, а серверные модули (включая службу агента кластера) вообще не были установлены.1C:Enterprise 8.3 Server Agent продолжает указывать на каталог со старым исполняемым файлом ragent.exe.Рассмотрим штатный и наиболее безопасный вариант обновления платформы на сервере:
services.msc (служба 1C:Enterprise 8.3 Server Agent или 1C:Enterprise 8.3 Server Agent (x86-64)).USR1CV8), и вводим его пароль. Программа установки сама обновит путь к исполняемому файлу службы и выставит необходимые права.Если серверные компоненты уже установлены в новый каталог, но служба Windows продолжает запускать старый релиз, изменим путь исполняемого файла с помощью системной утилиты sc config. Разберем пример для 64-разрядной службы:
net stop "1C:Enterprise 8.3 Server Agent (x86-64)"
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\""
net start "1C:Enterprise 8.3 Server Agent (x86-64)"
Посмотрим на вариант перерегистрации службы с использованием встроенных параметров самого агента сервера 1С:
bin старой версии платформы и удаляем регистрацию службы:
cd "C:\Program Files\1cv8\8.3.10.2580\bin"
ragent.exe -rmsrv
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"
После успешного запуска службы сервера 1С на новом релизе выполним обязательные регламентные шаги:
regsvr32 "C:\Program Files\1cv8\8.3.11.3034\bin\comcntrc.dll"
wsisapi.dll).1cestart.exe начнет автоматически подключать пользователей к серверной базе на новой версии.