Как исправить ошибку "Информационная база не обнаружена" при создании базы на сервере 1С?

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

Мы сталкиваемся с одной из самых распространенных ошибок при развертывании информационной базы 1С на сервере: "HTTP: Not found Ошибка при выполнении запроса POST к ресурсу /e1cib/login: по причине: Информационная база не обнаружена". Эта проблема часто возникает, когда мы создаем базу данных через консоль администрирования кластера 1С (удобнее через альтернативную консоль администрирования кластера 1С), но не можем подключиться к ней через клиентское приложение. Такая ситуация вызывает недоумение, особенно когда создание базы через клиент 1С (т.е. файловый вариант или через клиентскую утилиту) проходит успешно. Для упрощения управления инфраструктурой можно использовать бесплатный инструмент ПУСК для администрирования кластеров.

Давайте рассмотрим основные причины возникновения этой ошибки и подробно разберем шаги по ее устранению. Мы проанализируем, почему возникают трудности с правами доступа, как избежать конфликтов между службами сервера 1С и как правильно указывать параметры подключения. Наша цель – дать максимально развернутый мануал, который поможет решить проблему системным администраторам и специалистам по 1С.

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

Одной из ключевых причин возникновения ошибки "Информационная база не обнаружена" являются недостаточные права доступа у учетной записи, под которой функционирует служба «Агент сервера 1С:Предприятия». По умолчанию, при установке платформы 1С:Предприятие, создается специальный системный пользователь, чаще всего именуемый usr1cv8 (или его аналоги, такие как usr1cv8_XX, где XX – идентификатор сервера). Именно эта учетная запись отвечает за все операции, которые сервер 1С выполняет от имени платформы, включая взаимодействие с сервером баз данных, в нашем случае – MS SQL Server. На этом этапе полезно проанализировать SQL сервер глазами 1С-ника для выявления проблем с правами и ожиданиями.

Когда мы создаем новую информационную базу через консоль администрирования кластера 1С, сервер 1С отправляет соответствующую команду на MS SQL Server. Чтобы MS SQL Server мог выполнить эту команду и создать новую базу данных, учетная запись, под которой работает агент сервера 1С, должна обладать необходимыми привилегиями. В контексте MS SQL Server, это роль db_creator. Если у пользователя usr1cv8 нет этой роли, SQL Server откажет в создании базы данных, что приведет к ошибке, а впоследствии и к невозможности обнаружения базы сервером 1С. Также важно, чтобы была выполнена корректная настройка регламентных операций MS SQL SERVER под 1С.

Почему временное решение с Администратором работает, но опасно? Некоторые пользователи временно решают проблему, изменяя учетную запись для запуска службы агента сервера 1С на локального или доменного администратора. Безусловно, это "срабатывает", поскольку у учетных записей администраторов по умолчанию есть все необходимые права на сервере SQL Server и в операционной системе. Однако, это является серьезным нарушением принципов безопасности. Предоставление процессу сервера 1С избыточных прав значительно увеличивает потенциальную поверхность атаки и риски в случае обнаружения уязвимостей в платформе или конфигурации.

Правильное решение: предоставление роли db_creator пользователю usr1cv8. Мы должны предоставить минимально необходимые права только для пользователя usr1cv8. Давайте разберем по шагам, как это сделать:

  1. Откроем Microsoft SQL Server Management Studio и подключимся к нашему серверу SQL Server.
  2. В обозревателе объектов развернем узел "Безопасность" (Security), затем "Имена входа" (Logins).
  3. Найдем учетную запись, соответствующую пользователю 1С. Обычно это NTSERVICE\usr1cv8 или USR1CV8.
  4. Щелкнем правой кнопкой мыши по имени входа usr1cv8 и выберем "Свойства" (Properties).
  5. В открывшемся окне перейдем на вкладку "Роли сервера" (Server Roles).
  6. Установим флажок рядом с ролью db_creator.
  7. (Опционально) Установите флажок для роли processadmin.
  8. Нажмем "ОК", чтобы сохранить изменения.
  9. После этого перезапустим службу «Агент сервера 1С:Предприятия».

Конфликт служб Агента сервера 1С и портов

Еще одной неожиданной причиной ошибки, особенно после обновлений платформы 1С, является конфликт между несколькими службами агента сервера 1С. На одном сервере могут быть запущены разные версии платформы. Чтобы избежать путаницы при работе с консолями, рекомендуем использовать утилиту для запуска консоли кластера серверов любых версий или специальное приложение для консольного переключения между платформами.

Почему возникает конфликт? Каждая служба агента сервера при своем запуске пытается занять определенные стандартные порты (1540 и 1541). Если одновременно запущены две службы, возникает конфликт. В результате система не может одновременно обрабатывать запросы через один и тот же порт от двух разных процессов.

Как диагностировать и устранить конфликт?

  1. Откроем оснастку "Службы" (services.msc).
  2. Найдем все службы, начинающиеся с "Агент сервера 1С:Предприятия".
  3. Определим, какая служба нам нужна. Обычно это 64-разрядная версия 1C:Enterprise 8.3 Server Agent (x86-64).
  4. Остановим и отключим ненужную службу. Установите тип запуска "Отключена" для неиспользуемых версий.
  5. Убедимся, что нужная служба запущена и ее тип запуска — "Автоматически".

Нюансы создания и подключения к базе данных

Даже после настройки прав, ошибка может сохраняться из-за неточностей в именах. Сервер 1С идентифицирует базы по их точному имени. Если вы запутались в том, какая папка на сервере соответствует какой базе, вам поможет обработка для выявления списка баз из папки REG_XXXX.

Рассмотрим шаги по корректному созданию и подключению:

  1. При создании базы в консоли администрирования кластера 1С:
    • Откройте консоль. Критически важно запомнить или скопировать имя информационной базы в точности.
    • Поля "Пользователь информационной базы" и "Пароль" при создании в кластере (для SQL) лучше оставлять пустыми, если у usr1cv8 уже есть права в SQL.
  2. При добавлении базы в клиентское приложение 1С:
    • Нажмите "Добавить" -> "Добавление в список существующей информационной базы".
    • Выберите тип "На сервере 1С:Предприятия".
    • В поле "Имя информационной базы в кластере" введите имя в точности так, как оно указано в консоли.

Проверяем и перепроверяем. Если проблема сохраняется, убедитесь, что:

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

← На главную