Переход на 64-х разрядный сервер 1С

Публикация № 1038884

Администрирование - Журнал регистрации

переход 64-разрядный сервер Предприятие сохранение данных журналов регистрации

38
Переход с 32-х разрядной версии сервера 1С на 64-х разрядную с сохранением данных журналов регистрации информационных баз, используемых в 32-х разрядной версии.

Как известно, начиная платформы 1С 8.3, все версии платформы находятся в одном общем каталоге:

  • Для 32-х разрядной версии - «C:\Program Files (x86)\1cv8»
  • Для 64-х разрядной версии - «C:\Program Files\1cv8»

Собственно, в 1С 8.2 они тоже были в одном, только он назывался по другому «1cv82». До 1С 8.2 новая версия платформы устанавливалась поверх старой. Отдельная подпапка для новой версии не создавалась.

Если же установлен сервер 1С Предприятие, его настройки находятся рабочем каталоге сервера, в этой же общей папке в каталоге «srvinfo» (при необходимости можно перенести эти данные в любое другое место). Соответственно, при установке новой версии 8.3, в папке «1cv8» появляется новая подпапка с номером новой версии, а все настройки сервера используются те же, из папки «srvinfo». При этом, не происходит установка нового экземпляра службы сервера.

Примечание. При необходимости, можно создать и использовать параллельно несколько версий  службы сервера 1С 8.3 на одном компьютере. Для этого необходимо воспользоваться командной строкой и создать новую службу вручную. Потребуется указать новые рабочие порты и путь к рабочему каталогу нового экземпляра сервера «srvinfo».

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

@echo offset 
SrvUserName=".\USR1CV8"
set SrvUserPwd="********"
set SrvcName="1C:Enterprise 8.3 Server Agent 2"
set BinPath="\"C:\Program Files (x86)\1cv8\8.3.14.1630\bin\ragent.exe\" -srvc -agent -regport 2541 -port 2540 -range 2560:2591 -d \"D:\1c_srvinfo\""
set Desctiption="1C:Enterprise 8.3 Server Agent 2"
sc delete %SrvcName%
sc create %SrvcName% binPath= %BinPath% start= auto obj= %SrvUserName% password= %SrvUserPwd% displayname= %Desctiption% depend= Dnscache/Tcpip/lanmanworkstation/lanmanserversc 
start %SrvcName%

Однако, если необходимо не только установить новую версию сервера 1С, а, дополнительно перейти с 32-х разрядной версии на 64-х разрядную, путь нахождения программных файлов изменится. Новая версия сервера будет установлена параллельно текущей.

Как известно, журналы регистрации для серверных баз 1С находятся в рабочем каталоге сервера «srvinfo». Соответственно, при переходе на 64-х разрядную версию сервера, будут созданы новые журналы, вместе с новым экземпляром сервера. Информация из старых журналов регистрации будет потеряна. Если данные журналов регистрации часто используются администраторами и пользователями информационных баз, это является проблемой.

Собственно, в этой статье, я даю инструкцию по переходу на 64-х разрядную версию сервера 1С с сохранением данных журналов регистрации информационных баз, которые использовались при работе 32-х разрядной версии сервера.   

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

 

Порядок действий для перехода на 64-х разрядный сервер 1С

Останавливаем и отключаем службу агента 32 разрядного сервера. Это можно сделать из командной строки или из списка рабочих служб сервера:

Список служб

Устанавливаем 1С платформу 64 (сервер и все необходимые компоненты), при установке необходимо не забыть указать пароль для существующего пользователя USR1CV8.

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

Далее пробуем запустить консоль кластера серверов 1С для 64-х разрядной версии. В случае, если консоль не запускается, регистрируем необходимую библиотеку dll:

Пуск >> Все программы >> 1С Предприятие 8 >> Дополнительно >> [Номер версии 1С] >> Регистрация утилиты администрирования серверов 1С Предприятия

Или из командной строки:

C:\Program Files\1cv8\8.3.14.1630\bin\RegMSC.cmd

Выполняем перегрузку сервера (на всякий случай).

Опять запускаем консоль кластера серверов, открываем локальный кластер - список информационных баз пустой:

Пустой список информационных баз

Закрываем консоль кластера и останавливаем службу агента 1С сервера.

Переносим информацию об информационных базах из файлов «1CV8Clst.lst» и «1CV8Clsto.lst», расположенных в рабочем каталоге 32-х разрядного сервера:

C:\Program Files (x86)\1cv8\srvinfo\reg_1541

в аналогичные файлы в рабочем каталоге 64-х разрядного сервера:

C:\Program Files\1cv8\srvinfo\reg_1541

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

 Рабочий каталог сервера

Заменяем фрагмент:

},0,0,0}, {0},

Заменяем на:

},0,0,0}, {[количество баз],[информация о базах]}

Заменяемый фрагмент с информационными базами

Далее, переносим все папки из каталога 32-х разрядного сервера:

C:\Program Files (x86)\1cv8\srvinfo\reg_1541

в каталог 64-х разрядного сервера:

C:\Program Files\1cv8\srvinfo\reg_1541

Кроме папки, имя которой начинается с «snccntx» - ее не переносим.  

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

Далее, запускаем консоль кластеров 1С x64 и проверяем наличие всех информационных баз:

Список информационных баз заполненный

Пробуем открыть любую базу на сервере.

 

Изменение настроек для корректной работы web сервера

Если базы данных опубликованы на web сервере, необходимо изменить его настройки. Рассмотрим на примере использования web сервера IIS.

Меняем исполняемый файл для обработчика «1C Web-service Extension», в разделе «Сопоставление обработчиков» опубликованных информационных баз. Изменяем путь к скрипту «wsisapi.dll», на аналогичный путь из папки «bin» 64-х разрядной версии платформы:

Сопоставление обработчиков IIS

Примечание. В последних версиях платформы 1С 8.3 сопоставление обработчиков изменяется автоматически при перепубликации информационной базы. Необходимости делать это в ручную нет.

Так как разрешения для запуска 32 разрядных расширений уже не нужны, то меняем в настройке IIS:

Настройка разрешения 32 битных приложений

Пулы приложений -> DefaultAppPool -> Дополнительные параметры -> Разрешены 32-разрядные приложения -> на «false».

Выполняем повторную публикацию всех информационных баз на web сервере из конфигураторов системы:

Внимание. Для публикации и перепубликации баз данных на web сервере необходимо запускать конфигуратор 1С с правами администратора.

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

Спасибо за внимание, если статья оказалась полезной не забывайте поставить звездочку J

38

См. также

Специальные предложения

Комментарии
Избранное Подписка Сортировка: Древо
1. ruffer 05.04.19 10:21 Сейчас в теме
2. schanya 8 05.04.19 10:49 Сейчас в теме
Спасибо за статью! Не проще в реестре изменить путь к ragent с 32бит на 64бит агента? Смысл оставлять запись для "мёртвого" 32бит.
4. ids79 1837 05.04.19 13:54 Сейчас в теме
(2)А рабочий каталог старый использовать?
Можно, как вариант.
3. СтарПом 05.04.19 12:00 Сейчас в теме
5. ilya2184 59 06.04.19 21:45 Сейчас в теме
Рабочий каталог вообще рекомендую на отдельный быстрый диск выносить: так будет быстрее* и износ системного диска не будет беспокоить. Рабочий каталог для служб устанавливается в реестре. Периодически файл списка баз из рабочего каталога бэкапить не запрещено.

* По крайней мере для типовых конфигураций.
6. ids79 1837 07.04.19 08:37 Сейчас в теме
(46)Согласен. Тоже так делаю
7. Alfars 09.04.19 11:56 Сейчас в теме
Статья хорошая, только не понятно зачем создавать службу вручную, если она сама создается при установке сервера 1С.

Аналогично можно поступать при переезде сервера 1С с одного сервера на другой, только нужно обязательно перезабить пароль SQL в консоли. При этом, при такой же разрядности, что кэш сервера "snccntx", можно сохранить.
8. ids79 1837 10.04.19 07:48 Сейчас в теме
(7)Спасибо. Допустим, Вам нужно создать на сервере дополнительную службу сервера 1С для отладки и работы программистов.
Оставьте свое сообщение