При обновлении сервера приложений 1С:Предприятие (особенно при переходе со старых версий платформы на современные релизы) администраторы часто сталкиваются с крайне неприятной ситуацией. После успешной установки новой платформы и запуска службы 1С при попытке входа в информационную базу пользователи получают системную ошибку: «Информационная база не обнаружена». При этом сама СУБД MS SQL Server работает исправно, а базы данных физически присутствуют на диске.
В рамках данной статьи мы подробно разберем причины возникновения этой проблемы, выясним, как правильно восстановить связь между сервером приложений 1С и сервером управления базами данных, а также рассмотрим процесс переноса журналов регистрации без потери накопленной истории изменений.
Проанализируем основные технические причины, из-за которых сервер 1С перестает «видеть» существующие базы данных:
srvinfo): При установке новой версии платформы создается новая служба сервера 1С:Предприятия. По умолчанию она инициализирует чистый каталог настроек кластера, в котором отсутствует информация о ранее зарегистрированных базах.C:\Program Files (x86)\1cv8\srvinfo. При установке современного 64-разрядного сервера по умолчанию создается каталог в папке C:\Program Files\1cv8\srvinfo. Новая служба просто не обращается к старой директории.USR1CV8) может не иметь достаточных прав на уровне файловой системы NTFS для чтения и записи файлов из старого каталога кластера.Рассмотрим два надежных варианта решения этой проблемы в зависимости от исходной ситуации.
Этот метод является наиболее предпочтительным, поскольку он позволяет мгновенно вернуть все настройки кластера, список зарегистрированных информационных баз, учетные записи пользователей и, самое главное, журналы регистрации.
Разберем этот процесс по шагам:
services.msc.regedit и нажмите Enter.HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\1C:Enterprise 8.3 Server Agent... (название службы может немного отличаться в зависимости от конкретного релиза и разрядности платформы).ImagePath. Этот параметр содержит команду запуска службы.-d, который указывает путь к каталогу данных кластера. Замените путь по умолчанию на путь к вашей старой папке srvinfo (например, перенаправьте службу с пути C:\Program Files\1cv8\srvinfo на C:\Program Files (x86)\1cv8\srvinfo, если вы перешли с 32-битной версии на 64-битную).Пример скорректированной строки в параметре ImagePath:
"C:\Program Files\1cv8\8.3.22.1709\bin\ragent.exe" -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d "C:\Program Files (x86)\1cv8\srvinfo"
srvinfo, перейдите на вкладку «Безопасность» и предоставьте пользователю, от имени которого теперь запускается новая служба 1С (обычно это локальный пользователь USR1CV8), полные права управления (Full Control) на эту папку и все вложенные объекты.Если старый каталог настроек кластера srvinfo был безвозвратно утерян или поврежден, восстановить подключение можно вручную через утилиту администрирования серверов 1С:Предприятия.
Выполним следующие действия:
sa).Журнал регистрации в системе 1С жестко привязан к внутреннему уникальному идентификатору базы данных (GUID) внутри конкретного кластера. Путь к файлам журнала регистрации выглядит следующим образом:
.../srvinfo/reg_1541/<GUID_информационной_базы>/1Cv8Log/
Проанализируем особенности переноса журналов для каждого из вариантов решения проблемы:
srvinfo, уникальные идентификаторы (GUID) баз остались прежними. Платформа автоматически считает всю историю из существующих папок 1Cv8Log сразу после старта службы.Для восстановления истории логов при ручном создании выполните следующие действия:
srvinfo и сопоставьте имена ваших баз со старыми GUID. Сделать это можно, открыв текстовым редактором файл описания кластера 1CV8Clst.lst, где будут указаны соответствия имен баз и их старых идентификаторов. Также сориентироваться можно по дате изменения файлов в каталогах 1Cv8Log.1Cv8Log (файлы формата SQLite .lgd или старые файлы последовательного формата .lgf и .lgp).srvinfo, найдите вновь созданную папку с новым GUID для этой же базы данных и вставьте скопированные файлы в соответствующую директорию 1Cv8Log с заменой пустых файлов.