MSSQL_ENG014114

适用于:SQL ServerAzure SQL 托管实例

消息详细信息

Attribute
产品名称 SQL Server
事件 ID 14114
事件源 MSSQLSERVER
组件 SQL Server 数据库引擎
符号名称
消息正文 未将 '%s' 配置为分发服务器。

说明

如果错误消息指定某个特定实例而非“空”,则说明该指定的实例尚未正确配置,因而无法被识别为分发服务器。

如果消息指定“空”作为分发服务器,则说明 master 数据库中没有本地服务器项,或者该项不正确(可能因为已重命名计算机)。 复制要求一个拓扑中的所有服务器都使用具有可选实例名称的计算机名称(如果为群集实例,则为具有可选实例名称的 SQL Server 虚拟服务器名称)来注册。 SELECT @@SERVERNAME 为拓扑中每个服务器返回的值必须与具有可选实例名称的计算机名称或虚拟服务器名称相匹配,复制才能正常运行。

如果已按 IP 地址或完全限定域名 (FQDN) 注册了任意 SQL Server 实例,将不支持复制。 配置复制时,如果已在 SQL Server 中通过 IP 地址或 FQDN 注册了任何 SQL Server Management Studio 实例,则可能会引发此错误。

用户操作

如果错误消息指定一个特定实例,则将该服务器配置为分发服务器。 有关详细信息,请参阅 Configure Distribution

如果消息没有指定特定实例(即“空”),请确保正确注册了分发服务器实例。 如果计算机的网络名称和 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 的值对于某个群集实例是不正确的,则必须使用群集管理器更改该名称。 有关详细信息,请参阅 AlwaysOn 故障转移群集实例 (SQL Server)

另请参阅

错误和事件参考(复制)