MSSQL_ENG014117

Подробности сообщений

Название продукта

SQL Server

Версия продукта

10.0

Номер сборки продукта

Идентификатор события

14117

Источник события

MSSQLSERVER

Компонент

SQL Server Database Engine

Символическое имя

Текст сообщения

'%s' не настроена в качестве базы данных распространителя.

Объяснение

Эта ошибка может произойти, если истинны одно или оба из следующих условий:

  • Отсутствует в msdb..MSdistributiondbs вход для указанной базы данных распространителя.

  • Отсутствует или некорректен вход для локального сервера в базу данных master.

    Репликация предполагает, что все серверы в топологии должны быть зарегистрированы с использованием имени компьютера и необязательного имени экземпляра (в случае кластеризованного экземпляра это имя виртуального сервера SQL Server и необязательное имя экземпляра). Для правильного функционирования репликации необходимо, чтобы значение, возвращаемое SELECT @@SERVERNAME для каждого сервера в топологии, соответствовало имени компьютера или имени виртуального сервера с необязательным именем экземпляра.

    Репликация не поддерживается, если какой-либо из экземпляров SQL Server зарегистрирован при помощи IP-адреса или полностью определенного имени домена (FQDN). Эта ошибка может возникать, если при настройке репликации любой из экземпляров SQL Server был зарегистрирован по IP-адресу или по FQDN в SQL Server Management Studio.

Действия пользователя

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

  • Добавьте уникальное имя данного экземпляра SQL Server в качестве допустимого сетевого имени. Один из методов установки альтернативного сетевого имени — это добавление имени в файл локальных узлов. Файл локальных узлов по умолчанию расположен в каталоге «WINDOWS\system32\drivers\etc или WINNT\system32\drivers\etc». Дополнительные сведения см. в документации по Windows.

    Например, если имя компьютера — comp1, IP-адрес компьютера — 10.193.17.129, имя экземпляра — inst1/instname, то следует добавить в файл узлов следующую запись:

    10.193.17.129 inst1

  • Отключите распространение, зарегистрируйте экземпляр и восстановите распространение. Дополнительные сведения об отключении распространения см. в разделе Отключение публикации и распространения. Если значение @@SERVERNAME недопустимо для некластеризованного экземпляра, следуйте следующим инструкциям:

    sp_dropserver '<old_name>', 'droplogins'
    go
    sp_addserver '<new_name>', 'local'
    go
    

    После выполнения хранимой процедуры sp_addserver (Transact-SQL) необходимо заново запустить службу SQL Server, чтобы изменения @@SERVERNAME вступили в силу.

    Если значение @@SERVERNAME недопустимо для кластеризованного экземпляра, необходимо изменить имя с помощью приложения Cluster Administrator. Дополнительные сведения см. в разделе Приступая к работе с отказоустойчивым кластером SQL Server 2008.

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

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

  2. Отключите распространение, а затем включите его снова. Дополнительные сведения см. в разделе Настройка распространителя.