Как исправить ошибку LicenseCenter:LinkLicense при активации сервера 1С

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

В процессе развертывания нового сервера «1С:Предприятие» системные администраторы часто сталкиваются с процедурой активации программных лицензий. Казалось бы, процесс стандартный: ввод регистрационного номера и пин-кода. Однако иногда система выдает пугающее сообщение: «Ошибка вызова операции сервиса LicenseCenter:LinkLicense(). Ошибка SOAP сервера: Неизвестная ошибка. Ошибка СУБД: Не удалось выделить место для объекта dbo.Reference10... в базе данных LicenseCenter». Рассмотрим подробно, почему возникает эта ошибка и как нам действовать в такой ситуации.

Проанализируем суть ошибки

Первое, на что мы обращаем внимание при чтении текста ошибки — это упоминание СУБД и переполнение файловой группы PRIMARY. Если ваш сервер работает на SQL Express, первой реакцией будет проверить лимит в 10 ГБ на базу данных. Но давайте проанализируем ситуацию внимательнее: пользователь сообщает, что база данных абсолютно пустая или создана только что. Более того, в тексте ошибки фигурирует база данных с именем LicenseCenter.

Выясним важную деталь: базы данных с названием LicenseCenter на вашем локальном SQL-сервере не существует. Эта база принадлежит Центру лицензирования фирмы «1С». Таким образом, ошибка сообщает не о проблемах вашего оборудования или настроек SQL, а о техническом сбое на стороне серверов правообладателя. Операция LinkLicense — это веб-сервис, который отвечает за связывание (линковку) ваших идентификаторов оборудования с программным ключом в реестре «1С».

Почему возникают проблемы на стороне LicenseCenter

Разберем основные причины, по которым сервер активации «1С» может выдавать подобные ошибки СУБД:

  1. Технические работы: Регламентное обслуживание серверов лицензирования, во время которого базы данных могут быть временно переведены в режим «только чтение» или иметь ограничения на запись.
  2. Пиковые нагрузки: В периоды массовой сдачи отчетности или после выхода крупных обновлений платформы тысячи серверов одновременно обращаются к сервису, что может приводить к временным сбоям в транзакциях СУБД.
  3. Реальное переполнение: Как и любая информационная система, база данных Центра лицензирования может столкнуться с нехваткой дискового пространства или достижением внутренних лимитов таблиц (как и произошло в описанном случае с dbo.Reference10).

Рассмотрим порядок действий при возникновении ошибки

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

Способ 1. Ожидание и повторная попытка

Как показывает практика, подобные сбои на стороне «1С» устраняются техническими специалистами в течение времени от 15 минут до пары часов. Если ситуация не критичная, попробуйте повторить активацию через некоторое время. Это самый простой путь, не требующий ручных манипуляций с файлами.

Способ 2. Получение лицензии через файл (автономно)

Если автоматическая активация через интернет («Получить лицензию») продолжает выдавать ошибку LinkLicense, воспользуемся более надежным методом, который задействует другие механизмы обработки запросов. Рассмотрим этот процесс подробнее:

  1. Запустим мастер получения лицензии в обычном режиме.
  2. На этапе выбора способа получения лицензии выберем вариант «Вручную» или «На электронном носителе (через файл)».
  3. Программа предложит сохранить файл запроса на диск. Сохраним его (обычно это файл с расширением .txt или .req).
  4. Теперь нам необходимо передать этот запрос в «1С». Это можно сделать двумя путями: через специальный веб-портал или по электронной почте.

Разберем получение лицензии через электронную почту

Этот метод часто оказывается самым жизнеспособным, когда веб-сервисы (SOAP) работают нестабильно. Проанализируем алгоритм:

Сформированный файл запроса необходимо отправить по адресу lic@1c.ru. В теме письма можно ничего не указывать, либо написать «Запрос на получение лицензии». Робот автоматической обработки проанализирует вложение и в ответном письме пришлет файл лицензии с расширением .lic.

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

Проанализируем технические нюансы SQL Express

Хотя в данной конкретной ошибке ваш SQL-сервер не виноват, при установке сервера «1С» на SQL Express важно помнить о его реальных ограничениях, чтобы не спутать их с внешними ошибками в будущем:

Если в будущем вы увидите ошибку Could not allocate space... in database [ИмяВашейБазы], это будет означать, что вы достигли лимита в 10 ГБ. В случае с ошибкой LicenseCenter, как мы выяснили, имя базы всегда указывает на виновника.

Программная проверка наличия лицензии

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


// Пример получения информации о текущем сеансе
Инфо = ПолучитьСоединенияИнформационнойБазы();
Для Каждого Соединение Из Инфо Цикл
    Если Соединение.НомерСеанса = НомерСеансаТекущего Тогда
        // Здесь можно проанализировать параметры соединения
        // включая тип используемой лицензии
    КонецЕсли;
КонецЦикла;

Стоит отметить, что подробная информация о программных лицензиях (пин-коды, файлы) в объектной модели 1С напрямую недоступна из соображений безопасности. Эти данные хранятся в файлах .lic в локальных папках профиля пользователя или сервера (%ProgramData%\1C\1cv8\conf).

Выводы и рекомендации

Подведем итог нашему разбору. Если при активации вы видите упоминание базы данных LicenseCenter и ошибку LinkLicense:

  1. Не меняйте настройки своего SQL-сервера. Права пользователя sa, создание новых баз или переустановка Native Client не помогут, так как проблема находится на стороне серверов «1С».
  2. Проверьте доступ к интернету. Хотя ошибка СУБД специфична, иногда нестабильное соединение может обрывать SOAP-пакеты, вызывая непредсказуемые ответы сервера.
  3. Используйте файловый метод. Получение лицензии через файл запроса и электронную почту lic@1c.ru является самым надежным способом обхода проблем с веб-сервисами активации.
  4. Следите за именами баз. Всегда внимательно читайте текст ошибки: если база вам незнакома (как LicenseCenter) — скорее всего, вы столкнулись с проблемой внешнего сервиса.

Помните, что активация серверной лицензии возможна и из обычной файловой базы, запущенной на этом сервере. Главное, чтобы мастер активации отработал корректно и сохранил заветный файл .lic в системную папку, где его сможет прочитать служба 1C:Enterprise 8.3 Server Agent.

← На главную