Поделиться через


MSSQL_ENG014010

Сведения о сообщении

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

SQL Server

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

10.50

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

 

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

14010

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

MSSQLSERVER

Компонент

SQL Server Database Engine

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

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

Сервер '%s' не определен как сервер подписок.

Объяснение

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

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

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

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

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

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

    10.193.17.129 inst1

  • Удалите репликацию, зарегистрируйте каждый экземпляр SQL Server, а затем восстановите репликацию. Дополнительные сведения об удалении репликации см. в разделе Удаление репликации. Если значение @@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 R2.